v0.4.1 - The Revisit
Pre-release
Pre-release
v0.4.1 - The Revisit - Jan 9, 2017
Ranvier has been almost completely been rewritten from the bottom up. Not all of its old features are there but they will be back soon. The most important changes are as follows:
What's Changed?
- Localization is gone. I really wanted this to work but every fork I saw just ignored it and used 'en'. It also complicated a lot of the engine so it's gone.
- Damn-near everything is in a bundle. Documentation will be on the wiki soon. Any of the old folders that weren't
src/
but held game data likeentities/
orbehaviors/
are now bundle-able. So you could write a set of commands and create abundles/my-bundle/commands/awesome-command.js
and share it with someone else and it will be 100% compatible. Even if you both use two completely different command parsers - Areas are now really areas. Before an "area" was only rooms. All vnums were shared across all rooms, items, and npcs. Now "areas" are actually groupings of items, npcs, and rooms and the vnums are only unique to the area.
- Commands, events, channels, anything that was in a script file before is now much easier to write due to the new
GameState
object. - The old telnet library was scrapped and rewritten from scratch. It's much less wonky and commands no longer have to do stupid stuff like check to make sure data isn't accidentally telnet control characters
What does this mean going forward
The following is implemented in brand new code and is in a much less shitty state than it was when originally written.
- Command Interpreter
- Input events (login, character creation, actual command input itself)
- Items
- Rooms
- Npcs
- Commands
- Channels
- Players
- The data layer
- The distribution of items/npcs within an area
What's new
- Accounts - Players are now account based
- Channels - There were channels before but it's been completely rewritten in a much more usable structure
- Bundles (as described above)
- Real areas
- Helpfiles - The structure of these might change so this is tentatively in place
- Our sweet new logo and website
What isn't done yet, but will be soon
- Custom events for Player, npc, item, and room aren't re-implemented yet but are the next item on the list
- Containers
- Effects
- Leveling
- Skills
- Combat
- Plugins - The only plugin I know of was written my me, so plugins are on the back burner for the time being. Plugins were scripts you could attach to the game that would have access to all the game data but weren't actually related to the game itself (e.g., the web-based builder I scrapped)
This list essentially reads "You know, the game part of the game" but having the core on a solid foundation now makes it a lot easier to implement these features in a maintainable way