Channel for online discussion is #eoldev, IRCnet.
Bug tracker for EOL
Bug tracker for Web spying
Time for some Christmas treats.
As you may or may not know, in the shadows of Internet there is a secret society of freemasons that work hard on making elma better. In the beginning of this year we made EOL IRC bot and EOL API which allows you to pull battle data and to start battles. We also have couple of more ambitious ideas that require closer integration with EOL, so after giving it a thought I decided to try and write my own EOL server implementation, that would be compatible with EOL client and would also have some features on top of that.
The server has been ready for quite a while. We did some internal testing and it seems to be okay, so the next step is public testing, hence this post.
Server is running on 220.127.116.11
, port is 4460, connect with your usual client and usual credentials. The web-interface is at http://d.elmaonline.net/
. You can go there and look at battles and stuff, all as usual.
Also, to make it easier for you to estimate the benefits of this new server, there’s a web-spying interface on http://18.104.22.168:8080/
. For now it doesn’t respect hiding, so don’t do filthy stuff and don’t drive secret styles.
That’s it. Try it. Tell what you think, whether it’s a good replacement for current server or not. Tell whether you trust it or not. Tell the ideas that you have which are not possible with current EOL. Tell whether you want to participate in the development. Fair warning: don’t drive good times on it yet, they probably won’t be accepted by mopostaff.Q: Wow
Yep.Q: Is this stuff legal?
All elma magic happens on the client, the server merely passes your position to other players and writes some stuff to the database. So the new server, no matter how bad and faulty it is, doesn’t give you any more cheating opportunities.Q: Is it approved?
The EOL crew approves the idea. Milagros said that we can do whatever we like. But obviously the major factor here is public opinion, so if all of you approve it, then it is approved.Q: Is it fully compatible?
Hard to tell. I try to process client events to the best of my knowledge and I try to generate server events accordingly, but it is very possible that I missed something. That’s what the testing is for. Of invisible things there’s also database compatibility (needed for elmaonline.net) which kinda exists but is untested and there’s IRC interface which is not implemented (and will be implemented separately in EOL bot).Q: But all existing bugs are fixed?
No. Unfortunately there are some bugs in the protocol and there are some bugs in the client. Those bugs can’t be fixed unless I touch the client, which I am extremely unwilling to do, because it’s assembly code. If you are reading this and thinking “hey, I could improve the client”, please speak up.Q: Then why exactly this new server is good?
I’m glad you asked. There are several things:
Q: Okay, this stuff makes me excited, what are the next steps?
- It unlocks tons of possibilities. Possibilities we are talking about are: web-spying, all-time replays database for each player, better cheat detection, multiple realms (for example special realms for FEM and other offline events), and so on;
- I expect it to be more stable, easier to manage, and easier to get data from (which in turn will make elmaonline.net more swift);
- It is not as black box as the current server, so hopefully we will actually be able to fix bugs and add features for the first time in 5 years;
- I am ready to collaborate on it with other people when I feel that I need help. In particular it will be shared when I decide to leave the community, but I also think that once the testing hype is over, it would be nice to have someone to support it apart from me;
- It is cheaper in terms of hosting costs, so it doesn’t really depend on the donations;
- It is located in Europe so it would probably feel more responsive as most of us are located in Europe.
- As a special bonus, now the Elma 2 team doesn’t need to design the protocol and to write the server from scratch.
First step is to do public testing to reveal bugs and see how it performs in general. Once bugs are fixed and performance is tuned, we will switch the server, that’s the second step. The proposed integration scheme is as follows: elmaonline.net and database remain on Kopaka’s infrastructure, server is running on my infrastructure. Such approach gives us all the tasty new stuff and leaves plenty of space for manoeuvring in case something goes wrong. Once we do the switch (early 2016 I presume), we will focus on new features.Credits
anpdad — testing
b0ne — helped with webspying proof of concept back in May
domi — server code, webspying code
Kopaka — provided site and database for testing
Markku — ultra-diplomacy skills and testing
Max — recplayer code (I wish there were other options)
striker — issue management and testing
ville_j — webspying layout
zamppe — moral support