- Vampiric spells no longer freeze the client
- Characters which somehow manage to get stuck in walls on mapchange or login will get moved to a nearby open position
- Multi-hit spells now retain their multi-hit property on logout
- Tailored items now have icons
Sunday, August 31, 2014
Various bugfixes
Friday, August 29, 2014
New Websocket implementation
My server is online with a new websocket implementation by java-websocket by TooTallNate. I hope that this will work better for all the people which could not connect. Please try again and comment to tell me about your experience.
Replacing my WS implementation was surprisingly painless. I ran into some problems with my duplicate login prevention, but worked them out eventually. I had to sacrifice my stack for pure TCP sockets, but considering that I haven't regression-tested that code in ages, that's maybe for the better.
On an unrelated note: It's true. You can't put a server online without having it attacked immediately. I already have some IPs from China and Russia trying to brute-force my SSH root password. Good luck with that. It's randomly-generated and far too long to brute-force, especially over the net.
Replacing my WS implementation was surprisingly painless. I ran into some problems with my duplicate login prevention, but worked them out eventually. I had to sacrifice my stack for pure TCP sockets, but considering that I haven't regression-tested that code in ages, that's maybe for the better.
On an unrelated note: It's true. You can't put a server online without having it attacked immediately. I already have some IPs from China and Russia trying to brute-force my SSH root password. Good luck with that. It's randomly-generated and far too long to brute-force, especially over the net.
Thursday, August 28, 2014
Some problems fixed... or not.
Some people commented on my last post that they have problems logging in. Thank you very much for that. I now changed the server to:
1. terminate the old connection instead of the new one when the same account logs in twice
2. terminate connections when they don't responds to pings in a while
However, I am quite sure that this only fixed the symptom, not the actual problem, which seems to be a bug in my websocket implementation. I am thinking about trashing that hacky thing and replace it with a tried and true implementation like this.
1. terminate the old connection instead of the new one when the same account logs in twice
2. terminate connections when they don't responds to pings in a while
However, I am quite sure that this only fixed the symptom, not the actual problem, which seems to be a bug in my websocket implementation. I am thinking about trashing that hacky thing and replace it with a tried and true implementation like this.
Onliner for a day
My server is now online for a day and I already have three account registrations. Considering that I didn't actually do anything to promote it yet except for writing on this blog, these are three more people than expected. It would be even more motivating, though, when they would have actually done anything, but looking at their saves in the database it seems like they didn't even move from the starting point. I wonder if they encountered some problem or just didn't felt like playing.
Another topic: I am currently building a website on wizardmmo.com using Wordpress as a content management system. When it's finished I will start to think about how to spread the word about my game.
Another topic: I am currently building a website on wizardmmo.com using Wordpress as a content management system. When it's finished I will start to think about how to spread the word about my game.
Tuesday, August 26, 2014
It's online!
I rented a small virtual machine, installed my server on it and uploaded my javascript client. Except for some small initial issues it now runs great. At least as long as I am the only one who is playing.
It is now available at wizardmmo.com. But before I start to promote it, I need to take care of some things from my todo list.
It is now available at wizardmmo.com. But before I start to promote it, I need to take care of some things from my todo list.
Sunday, August 24, 2014
My game is now called WizardMMO
I finally decided on a name: Until I come up with something better, it will be called WizardMMO. I already registered the domain wizardmmo.com and will soon build a website. Yes, the name is very generic, but this is what my game is about. It's a MMO where you play only wizards. Much easier to remember than some word-salad title or made-up fantasy name.
My original working title used to be Wizardwar, but Paradox Interactive beat me to that by a few months.
My original working title used to be Wizardwar, but Paradox Interactive beat me to that by a few months.
Walk animation, cast animation and ice particle effect
I did some long-needed pixel artwork. A walk animation for the player-character, a casting pose and the missing particle effect for cold attacks.
Saturday, August 16, 2014
ToDo List
I haven't made a proper roadmap in ages. So this is not really a roadmap but rather an unordered but prioritized todo list.
Must Have
Should Have
Nice to have
Not sure if worth doing
Must Have
Should Have
Nice to have
Not sure if worth doing
- Netcode
- Zipped messages
- Client-sided prediction
- Security
- Password reset
- Brute force prevention
- Websocket over TLS
- Character customization
Genders- Portrait engine
- Graphic engine
- Dynamic recoloring of graphics
Particle effect for cold spells- Animations
Create walk animation for player characterCast animation (code and graphics)- Dead animation (code and graphics)
- Equipment
- Staffs & staff crafting
- Mining
- Prospect spell
- Sense spell
- Spells
Auto-generation of spells with target areas- Route Finding
- Upgrade from Dijkstra to A*
- Allow multiple layers
- Allow tiles with complex walkability-shape
- Flee algorithm
- Content
- One more soft material
- Website
Host for gameserver- Static content
Forum- Bugtracker
- Wiki
- All of that accessible with the ingame account
- Marketing
Come up with a name already!Get a domain name
Subscribe to:
Posts (Atom)