EVB

Introduction

EVB, sometimes known as EclipseVB or “If EO2.0 was continued”, is my attempt at creating a real engine and not a pre-made game as many engines coming out back in 2012/3 seemed to be. It’s meant to be used as a base but has all the essentials for making your own ORPG.

Features

EclipseVB has the same features and functionality you would expect from EO with a few necessary additions, bug fixes and optimisations:

  • Dynamic conversation system: This system allows users to create full conversations with multiple response options similar to systems you would see in top-end RPG games. On top of that the system includes an event system - you can apply an event to each conversation such as “warp player”, “give item”, “open bank”, etc. Usage: /editconv.

  • Quest system: One thing that Origins lacked was a good supported quest system. I do feel that to make a successful RPG you will require some sort of quest system so we’ve implemented that to help add some variety to projects. Usage: /editquest.

  • Bug fixes: Thanks to the community we’ve been able to add in all the bug fixes you’ve found over the past few years and integrated them into a full stable release.
  • Optimisations: EO is in no way a badly optimised engine - in fact it is very well optimised. We have though taken into consideration a few suggestions about where performance could be improved and we’ve fixed quite a few major performance issues.
  • Documentation: Unlike previous engines, this engine features a whole folder full of documentation about the various features of the engine.

Check out EVB

You can download it here:

EVB v2.6.1

Changelog

! ==========================
EclipseVB v2.6.0 -> v2.6.1
==========================
! - Quests and conversations are now compressed via Zlib. [Credits: Richy]

  • Quest convs now end if you have not met all the objectives.
  • Fixed crashes if a newly registered player logged out on a PVP map.
  • Fixed not being able to register after logging in before.
  • Fixed spell animations not playing if that spell kills the enemy. [Credits: SkywardRiver]
  • Questgivers now have a “!” above their heads if they have an available quest. [Credits: SkywardRiver]
  • Questgivers now have a “?” above their heads if their quest is currently in progress.

! ==========================
EclipseVB v2.5.2 -> v2.6.0
==========================
! - Game data packets are now compressed via Zlib. [Credits: Robin/JC/Richy]

  • Added a button to reload conversations.
  • Fixed serverside MOTD controls.
  • Fixed DoTs not stacking with other sources of damage. [Credits: SkywardRiver]

! ==========================
EclipseVB v2.5.1 -> v2.5.2
==========================
! - Updated the shop GUI to reflect the changes made in a previous update.

  • Fixed clicking on an item not displaying its cost.
  • Added functions for reading/writing currencies, singles, and doubles to the buffer.

! ==========================
EclipseVB v2.5.0 -> v2.5.1
==========================
! - Fixed the instant disconnect when changing map morals.

  • Fixed quests not being completed despite completing all of the objectives.
  • Fixed quest progress messages being displayed despite not being on those quests.
  • Fixed quest items not being taken away on completion.
  • Fixed the quest log not being repopulated on quest completion.
  • Updated the default quest.

! ==========================
EclipseVB v2.4.0 -> v2.5.0
==========================
! - Tightened up input and movement.

  • Reduced the default constants.
  • Versions are now handled through constants in modConstants (both sides).
  • Fixed the quest editor not allowing you to change item/conversation indexes & values.
  • Cleaned up and optimised the gameloop slightly.
  • Fixed the fps counter.
  • Level, class and quest requirements can now be set for quests.
  • Increased the length of quest names (uses NAME_LENGTH now).
  • NPCs can now have specific conversation chats set for specific quest stages.
  • Added quest progress messages (i.e. “5/10 worms killed”).
  • Added a 10 second delay to logging out on PVP maps (prevents logging out to survive).
  • Removed the “PK” system.
  • Fixed item and conversation quests.
  • Replaced quest tasks with quest objectives. Objectives can be progressed simultaneously.
  • Dozens of misc. quest system bug fixes and changes.
  • Fixed attacking/talking to NPCs not working sometimes.
  • Walking whilst in a conversation now closes the conversation.
  • The starting map, x and y are now handled in the server’s options.ini.
  • The client will now go back to the main menu after losing connection to the server.
  • Fixed instant cast spells not leaving the spell buffer.
  • The “docs” folder is now located in the root folder.
  • Added documentation for making quests.
  • Fixed player stunning. [Credits: Justin]

! ==========================
EclipseVB v2.3.0 -> v2.4.0
==========================
! - Fixed the attack animation not being sent unless damage is done. [Credits: iRicardo]

  • Fixed the delete button in the shop editor.
  • Added a new centralised editor. Usage: /editgame.
  • Removed the serverside logging system.
  • The server connection timeout is now a constant.
  • Cleaned up the conversation, item, resource and npc editors.
  • Removed the RAW parameter from the FileExist function (serverside).
  • The hotbar now uses 0-9, - and = in place of the function keys.
  • Removed the system tray functionality.
  • The server now comes with a “docs” folder that contains useful tutorials.
  • The runtimes are now included in the client folder.
  • Removed the checks for admin PVPing.
  • Fixed being able to re-cast a spell while already casting it.
  • Fixed consumable items not being removed from the hotbar.
  • Added a blocking algorithm to CanPlayerBlock. [Credits: Yukiyo]
  • Fixed being able to use the hotbar whilst in a bank, trade or shop.
  • Created a constant for the minimum pvp level: MIN_PVP_LEVEL.
  • Fixed the chat not clearing when it loses focus.
  • Fixed not being able to withdraw currencies.
  • Removed the unused “mastery” and “handed” variables in the ItemRec.
  • The MOTD can now be set from the server console.
  • 3 random items (excluding gold) are now dropped on death.
  • NPCs will now react to 0-damage attacks.
  • Fixed targets not clearing on death. [Credits: ValentineBr]
  • Removed the shop buy and sell buttons.
  • Shop buying is now done through double-clicking in the shop window.
  • Shop selling is now done through double-clicking the inventory item.
  • Fixed the damage label not displaying “defence” for armour and shields.
  • Fixed quests not being cleared in the quest log on quest finish.
  • Added support for RMXP-style autotiles. [Credits: Robin]
  • Fixed NPC interactions not being registered sometimes.
  • Added a constant for MAX_BLOOD.

! ==========================
EclipseVB v2.2.1 -> v2.3.0
==========================
! - Optimisations and code cleanups.
! ==========================
EclipseVB v2.2.0 -> v2.2.1
==========================
! - Removed Binds and replaced them with Tradable and Untradable items.

  • The three most valuable items in your inventory are now dropped on death.
  • Fixed “You are already on this quest” message
  • Fixed global messages crashing the client.
  • The quest list now automatically updates.
  • Fixed an issue with UpdateMapLogic.

! ==========================
EclipseVB v2.1.4 -> v2.2.0
==========================
! - Fixed picConv not clearing on logout.

  • Music and sound can now have any (supported) extension.
  • Added a cooldown to item consuming.
  • Added a quest system. Usage: /editquest.
  • Game data is now cleared on login. [Credits: iRicardo]
  • Fixed recently learnt spells not being sent. [Credits: iRicardo]
  • Fixed the slide attribute. [Credits: iRicardo, ValentineBr]
  • Fixed targets not being cleared on logout. [Credits: iRicardo]
  • Fixed defence not being taken into account. [Credits: Ryoku for the formula]
  • Fixed resources not being able to be collected without a weapon.
  • Added a serverside button for clearing all online players’ quests (useful for debugging).

! ==========================
EclipseVB v2.1.3 -> v2.1.4
==========================
! - Fixed an error when loading the game with music off.

  • Fixed string lengths not matching up on convs.
  • Fixed crashing when creating a new character.
  • Removed old form files.

! ==========================
EclipseVB v2.1.2 -> v2.1.3
==========================
! - Fixed sounds playing even if disabled.

  • Fixed music not turning off when disabling it.
  • Fixed the kick button not doing anything. [Credits: iRicardo]

! ==========================
EclipseVB v2.1.1 -> v2.1.2
==========================
! - Fixed being able to restart the same conversation.

  • Fixed the “CurChat” scrollbar being able to exceed the ChatCount.
  • Clicking the chatbox will now set focus on the chat bar.
  • Fixed the “delete” button in the conversation editor.
  • Fixed the sound combobox in the conversation editor.
  • Fixed the bad centering on conversation replies.
  • Changed the length of conversation text and replies.
  • Added tab to target.

! ==========================
EclipseVB v2.1.0 -> v2.1.1
==========================
! - Conversations can now have faces (added in the NPC editor).

  • Fixed NPCs and players being able to move whilst chatting.
  • Fixed being able to move while picCurrency was visible in banks.
  • Added a warping (map, x, y) event to the conversation system.
  • Added a “heal player” event to the conversation system.
  • Added sounds to the conversation system.

! ==========================
EclipseVB v2.0.2 -> v2.1.0
==========================
! - Fixed not being able to move after relogging in a bank.

  • Changed the timeout for connections to 5 seconds (up from 3).
  • Removed the unused CharSlot parameter in SendUseChar.
  • Changed the longs in Get/SetPlayerPK to bytes.
  • Removed the useless YES and NO boolean constants.
  • Fixed the data/packet flooding timer not resetting.
  • Fixed the attack timer not being checked when using resources. [Credits: ValentineBr]
  • Added the constants for missing editors serverside.
  • Fixed the frame skipping when NPCs walk.
  • Fixed having to click “Okay” to update attributes.
  • Stopped data being sent to maps with 0 players.
  • Various gameloop & networking optimisations. [Including some by iRicardo].
  • Added a new conversation system! Use /editconv. [Thanks to Matthew and Richy too!]
  • Fixed the stat bonuses carrying over to new items in the item editor.

! ==========================
EclipseVB v2.0.1 -> v2.0.2
==========================
! - Added a messagebox displaying the packet that caused a packet error.

  • Fixed the PlayerDir packet being sent too often. [Credits: Rob Janes]
  • Optimised the Set/GetPlayerDir functions to use bytes instead of longs.
  • Added multiple drops with percentile chances for NPCs.
  • Fixed being able to type in the chatbox.
  • Replaced the old DirectSound engine with BASS.
  • Removed the “RAW” parameter from the FileExist function.
  • Fixed the memory leak with text rendering. [Credits: Lightning]
  • Added minimise and close buttons to editor forms.
  • Modified the NPC editor to add the new conversation options.
  • Fixed players with names = name_length not being able to login. [Credits: Richy]

! ==========================================
Eclipse Origins v2.0.0 -> EclipseVB v2.0.1
==========================================
! - Fixed a level up security hole. [Credits: Robin]

  • Fixed spells with indexes over 35. [Credits: Niall]
  • Fixed player messages. [Credits: Xlithan]
  • Fixed the hotbar. [Credits: Robin]
  • Fixed picSpells not refreshing. [Credits: Helladen]
  • Fixed NPC_HighIndexes. [Credits: Helladen]
  • Fixed an overflow error in the currency menu. [Credits: Helladen]
  • Fixed some trading system crashes. [Credits: Ryoku Hasu]
  • Fixed targetted heal HP/MP and Damage HP Spells. [Credits: Joyce]
  • Fixed animations in the NPC editor not saving. [Credits: Sotvotkong]
  • Fixed GetPlayerClass clientside. [Credits: Riiicardoo]
  • Friendly NPCs must now have 1 point in each stat. [Credits: Scootaloo]
  • Fixed the EXP bar only working for the first player. [Credits: Terabin]
  • Fixed the “Slide” map attribute crashes. [Credits: iHero]
  • Fixed spirit over time spells. [Credits: Soul]
  • Fixed starting spells. [Credits: Noth]
  • Fixed the classes dropdown box in the spell editor. [Credits: Noth]
  • Fixed an error in the OnDeath procedure. [Credits: ValentineBr]
  • Corrected the time between attacks for NPCs. [Credits: ValentineBr]
  • Fixed an error caused by NPCs landing a critical hit. [Credits: ValentineBr]
  • Fixed item animations. [Credits: GuardianBR]
  • Fixed some bank crashes. [Credits: ValentineBr]
  • Fixed a lag spike caused when accepting trades. [Credits: Matthew]
  • Fixed a couple of player movement issues. [Credits: ValentineBr]
  • Fixed vitals not updating after a level up. [Credits: iRicardo]
  • Fixed the non-existant /info command. [Credits: iRicardo]
  • Fixed the shop editor not loading properly. [Credits: iRicardo]

! [Credits to Erwin for adding all the above fixes into the engine] 
! - Various code cleanups and optimisations.

  • NPCs and players will now automatically be targetted when attacked.
  • Fixed healing NPCs causing their overall health to increase.
  • You can now walk through players on safe maps.
  • Fixed party EXP sharing and party leaving. [Credits: Terabin]
  • Fixed being able to be invited to a party whilst you’re inviting someone else.
  • Converted chat functions to letters (e.g. /b [global message], /e [emote], /w [whisper]).
  • Fixed emote messages.
  • Added a party chat system: usage /p message.
  • Removed the Read/WriteInteger functions. Integers are slow; use longs or bytes.
  • Replaced GetTickCount with the more reliable timeGetTime.
  • The /info command can now only be used if you are on a safe map.
  • Fixed the stats command erroring if the player didn’t exist.
  • Added WASD and got rid of the arrow key movement.
  • Added replacement strings in NPC attacksays: <class>and <playername>.</playername></class>

Yes.

Currently using this engine for a project. Great base with features that are easily added onto.

Currently using this engine for a project. Great base with features that are easily added onto.

Hey man. Cheers. If you have that bug you fixed for the bank currency lemme know, this is the latest fixed version so it doesn’t have that fix.

Great Engine!

This is a great engine, good job

Cheers guys. There should be an update sometime this week with zlib compression (thanks to Richy) + a few bugfixes/optimisations.

Wow this looks really nice. I especially like the conversation system.

When will DX8?

Wow this looks really nice. I especially like the conversation system.

Cheers. It’s really useful.

When will DX8?

The next _next _update.

This would be great with dx8!

Now this is something I would use.good work. As for the dx8 comment. Add it yourself

Now this is something I would use.good work. As for the dx8 comment. Add it yourself

I’d like to add it. DX7 is so overcomplicated and limiting.

Dx7 has it’s limits but those are able to be worked around but it is difficult, I can’t wait to see this as Dx8 and I’ll look through it to see what it’s like, it’s a nice looking engine from the few minutes I was on it though.

Dx8 will make this even better.good work sekaru

I’m glad to see it’s being updated to Dx8 🙂

Nice engine, rly complete and without bugs, I just don’t like this old GUI…  🙂

Robin’s zlib, ported by JC. Sorry Sek, please credit them instead of me. Thanks. ❤

Robin’s zlib, ported by JC. Sorry Sek, please credit them instead of me. Thanks. ❤

Credited all three already.

Update!

Changelog:

==========================
EclipseVB v2.5.2 -> v2.6.0

  • Game data packets are now compressed via Zlib. [Credits: Robin/JC/Richy]
  • Added a button to reload conversations.
  • Fixed serverside MOTD controls.
  • Fixed DoTs not stacking with other sources of damage. [Credits: SkywardRiver]

Download:
EVB v2.6.0

Log in to reply