-
Colibri Emulator - C# Lightweight and customizable R63 Emulator
What is Colibri?
Colibri is a new lightweight Habbo Emulator written in C#, I started this project because in my opinion all current emulators lack a lot of futures, are just messy, outdated or too unstable. With Colibri I am aiming for a stable emulator with well documented and clean source code, a plugin API and a fully functional ASE (All Seeing Eye, Housekeeping, whatever).
What makes Colibri better?
My goal isn't to create just another emulator that is aiming to get the newest swf packets, I honestly couldn't care less about new releases, the game gets worse every time anyways. But I believe in quality > quantity, this means that I don't want functions that don't fully work and I give a lot about user experience. I have put more time than I usually would into planning this project, a Habbo Emulator is a huge piece of software with many things that need to work together, without proper planning code gets really messy really fast.
So what is done already?
I created the basics for my database (100% from scratch), and the handshake is fully functional, the code also has some basic utils like a logger. I also finished the important HotelView packets (others like hall of fame are planned later in the development progress)
Tl;Dr?
Colibri is a new habbo emulator, I am building a stable, clean, open source emulator. It will have a plugin API, new database, and extremely advanced housekeeping.
Currently done is
- Emulator basics
- Handshake
- Hotelview
- Messenger
"Okay okay, cool, but I am here for the images."
"Snippets"
Cheers,
Ephedrine
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Thanks @LucasArts,
In the meanwhile I have implemented a few things:
- Navigator (static, not from database yet)
- Messenger
- Redone some database code
- Club Subscriptions
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Another emulator development, I wish you all the best with it! :cool:
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Robot
Another emulator development, I wish you all the best with it! :cool:
Only 3 active ones, this section used to be so much more active :(
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
But I believe in quantity > quality
I believe you made a mistake. You should focus more on quality as functions that are broken or messy or w/e are bad. By the looks of your post it seems like you meant to focus more on the quality of features rather than how much features. Guess you meant < (which is smaller than).
Anyways, good luck!
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Glaceon
I believe you made a mistake. You should focus more on quality as functions that are broken or messy or w/e are bad. By the looks of your post it seems like you meant to focus more on the quality of features rather than how much features. Guess you meant < (which is smaller than).
Anyways, good luck!
Oops, that's a typo. I focus on fully working implementations instead of messy code with missing features.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Why would you need a plugin API if the emulator is going to be open source? It seems that you just took the idea of @The General and added it to have more features. Anyways I don't see the point of having a special plugin API if you just can add it to the code of the emulator. I can give you enough reasons why this is pretty useless if it's open source but a lot of people wouldn't even read this.
Anyways it looks good so far, I hope you continue with your project and finish it. I wouldn't set the release date for Christmas because it takes a while to develop a stable and decent emulator for any game that is out there.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
CodeDrgaon
Why would you need a plugin API if the emulator is going to be open source? It seems that you just took the idea of @
The General and added it to have more features. Anyways I don't see the point of having a special plugin API if you just can add it to the code of the emulator. I can give you enough reasons why this is pretty useless if it's open source but a lot of people wouldn't even read this.
Anyways it looks good so far, I hope you continue with your project and finish it. I wouldn't set the release date for Christmas because it takes a while to develop a stable and decent emulator for any game that is out there.
Because adding a plugin file is easier than having to edit code and recompile the emulator? For non-technical users who want to get set up quickly, plugins are far more effective than having to edit code.
Also, a lot of open source projects use plugins so I don't see your point.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
CodeDrgaon
Why would you need a plugin API if the emulator is going to be open source? It seems that you just took the idea of @
The General and added it to have more features. Anyways I don't see the point of having a special plugin API if you just can add it to the code of the emulator. I can give you enough reasons why this is pretty useless if it's open source but a lot of people wouldn't even read this.
Anyways it looks good so far, I hope you continue with your project and finish it. I wouldn't set the release date for Christmas because it takes a while to develop a stable and decent emulator for any game that is out there.
A plugin system keeps the core code from being hacked all around and introducing bugs into future servers being released, if people just release the original and focus on bugs in plugins the emulator could maintain stability to some degree.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
CodeDrgaon
Why would you need a plugin API if the emulator is going to be open source? It seems that you just took the idea of @
The General and added it to have more features. Anyways I don't see the point of having a special plugin API if you just can add it to the code of the emulator. I can give you enough reasons why this is pretty useless if it's open source but a lot of people wouldn't even read this.
Anyways it looks good so far, I hope you continue with your project and finish it. I wouldn't set the release date for Christmas because it takes a while to develop a stable and decent emulator for any game that is out there.
The release dat for the Emulator is not planned for christmas, I am just testing my emulator on the christmas (sandbox) client of my own hotel, and I said that's why it has christmas all over it, unlike the current habbo hotelview. I would never be able to finish this before christmas.
Quote:
Originally Posted by
Moogly
A plugin system keeps the core code from being hacked all around and introducing bugs into future servers being released, if people just release the original and focus on bugs in plugins the emulator could maintain stability to some degree.
I also want to make sure that unexperienced c# coders will add features for their own hotels instead of editing the core code, they can add plugins, and won't have huge problems by editing code.
About progress on this project: Semester exams are going on, ending wednesday, there won't be any updates untill wednesday.
-
Oh, how I long for competitions around this scene!
Guessing you wouldn't be up to compete against an old fella like me? I would not chose the same revision as you're on though
--- merged ---
Dead already?
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Dominicus
Dead already?
Quote:
Originally Posted by
Ephedrine
About progress on this project: Semester exams are going on, ending wednesday, there won't be any updates untill wednesday.
I won't give up on a project this fast, and if I give up, I will definitely release the unfinished source code, hoping it will be used by the community.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Ephedrine
I won't give up on a project this fast, and if I give up, I will definitely release the unfinished source code, hoping it will be used by the community.
How about
Quote:
Originally Posted by
Dominicus
Oh, how I long for competitions around this scene!
Guessing you wouldn't be up to compete against an old fella like me? I would not chose the same revision as you're on though
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Dominicus
Oh, how I long for competitions around this scene!
Guessing you wouldn't be up to compete against an old fella like me? I would not chose the same revision as you're on though
--- merged ---
Dead already?
Thought your sig said you were retired, I guess that's just to keep the noobs away lal. Anyways, a competition would be fun to see. Winner gets to have all the fame!
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Glaceon
Thought your sig said you were retired, I guess that's just to keep the noobs away lal. Anyways, a competition would be fun to see. Winner gets to have all the fame!
No need for fame! Winner or loser, it's just motivation! I'm still retired, though I need to keep my rusty C# skills up to date! ;-)
Ontopic: How are you handling your connections? A regular Tcp socket or something beautiful like SAEA or maybe even C++ sockets?
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
I would love to see some code, the project seems interesting!
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Dominicus
No need for fame! Winner or loser, it's just motivation! I'm still retired, though I need to keep my rusty C# skills up to date! ;-)
Ontopic: How are you handling your connections? A regular Tcp socket or something beautiful like SAEA or maybe even C++ sockets?
Haha, no thanks, I am just coding this when I'm bored, I participate in a lot of hackathons, so it's nice to have a project like this where you can help a community, and don't feel the need to create something that works amazing in a short period of time. And I use ugly sockets, for now.
Quote:
Originally Posted by
TheEdit0r
I would love to see some code, the project seems interesting!
When I got the time again the next thing I'll be working on is rooms, I think I can post some interesting snippets of that.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
CodeDragon
Why would you need a plugin API if the emulator is going to be open source? It seems that you just took the idea of @
The General and added it to have more features. Anyways I don't see the point of having a special plugin API if you just can add it to the code of the emulator. I can give you enough reasons why this is pretty useless if it's open source but a lot of people wouldn't even read this.
Anyways it looks good so far, I hope you continue with your project and finish it. I wouldn't set the release date for Christmas because it takes a while to develop a stable and decent emulator for any game that is out there.
You constantly have something negative to say about nearly every post. :sneaky2:
On topic: This seems quite promising. I am truly hoping this ends up turning out, unlike many of the other developments in the community.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Brought
You constantly have something negative to say about nearly every post. :sneaky2:
That's how you interpreted my post, it's actually true that a lot of people wouldn't even read long post because of tl;dr. I've been moderating for quite a while to know that. Even if you post a link in the previous post some people would ask for it. Anyways enough of that.
I didn't see the point of having a plugin API at the time I wrote this post but it seems that @Caustik, @Moogly and @Ephedrine gave very good reasons to implement one. There must be criticism to improve. I never said anything extremely negative about this project. I even encourage @Ephedrine to work on this project. Remember that everyone has it's own opinion about things. I just gave mine and others gave theirs and they changed mine.
I've seen so many projects come and go across all the sections that I regular visit or moderate. A lot of them have promising features but in the end their just a poor implemented version of that feature which is a disappointing. I just try to keep a neutral perspective on these projects because they might turn out to be amazing. It just doesn't make me super exciting anymore if there is a new project.
That's all I'm going to say about it, I'm sorry if I annoyed you with my posts, I'm just trying to contribute and have a good discussion.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Exams are over, did pretty well. What's planned for colibri now? I have moved the project to a private github repo, and will create something similar to this soon: https://oc.tc/revisions/plugins So you guys can follow the project, I will try to explain what i did in every commit message :love:.
Now, the first thing planned is to create a bare bone for the rooms, that's gonna take a little bit of planning before I'll start coding, but I expect to show some screens and snippets of the first progress tomorrow evening (GMT).
Cheers,
Ephedrine
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
I really think a plugin system is doable, I believe @Nillus tried to implement one into Ion, but I'm not entirely sure how functional it truly was. Would be nice if we could see scripting languages as an option for plugins like maybe JScript.NET, not entirely necessary but still a nice option to have. Some people would probably prefer to write less code to accomplish the same feat.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
I'd recommend an (preferably unix-) socket based plugin system, making it language independent.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Hoshiko
I'd recommend an (preferably unix-) socket based plugin system, making it language independent.
That would add complexity to what could be a simple 50 lines of code system that supports any language that compiles into .NET which is quite a lot actually. We have Python, C#, Visual Basic .NET, C++/.NET, and PhP has been done before as well.
Edit:
Now if you mean a well-used and well documented RPC system that has a native .NET library, then I wouldn't stand against that as long as it's been tried and tested under heavy server environments.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
Quote:
Originally Posted by
Moogly
Now if you mean a well-used and well documented RPC system that has a native .NET library, then I wouldn't stand against that as long as it's been tried and tested under heavy server environments.
Yes that was what I ment. With, for example, MessagePack -- like how Neovim does it.
Other alternatives such as Google's Protobuf are also a valueable option IMO.
-
Re: Colibri Emulator - C# Lightweight and customizable R63 Emulator
I am also interested because this is a Dutch Emulator, saves me a lot of time translating it all :P
Good luck with this project. I hope hear more good news from this project!