Sign in to follow this  
jcsnider

Dev Blog 03/26/2016 - Event System Complete!

Recommended Posts

984549685492.png

Event System Complete

Dev Blog March 26th 2016

News/Updates

The title says it all, events are now complete!

Event Info/Description

For those that don't know, events are in-game entities that when activated will run a list of user-defined commands. These commands are pre-determined actions that you can customize and add without any kind of programming knowledge. Everything is handled in a simple graphical user interface.  Events can run in the background or take shape as in game entities. Below is a list of common uses for events but the event system:

1. Basic Neutral NPC Dialogue/Conversation

2. Shop Keepers/Bankers

3. Lights you can turn on/off.

4. Switches you can interact with to open doors, chests, etc.

5. Environment changes like a house appearing after you follow a quest to build one.

6. In-Game Cutscenes

7. Blocking access/allowing access to areas based on classes, quest status, current level

8. Giving/Taking Spells/Items

9. Show the enemy escaping, spawn a ton of bad guys around the player

10. So, so much more!

Everything above is really simple - Events can be so much more complex if you make them.

Common Events

Common events are a set of events that are not tied to a map. They are a set of events that you can define and edit in the game editor as if you were creating items or spells. With common events you create you list of actions or commands like normal and then later on you can run those commands from any other event in the same. If you are a programmer you can think of common events like defining a function which is a simple block of code that you can reuse elsewhere without having to rewrite the same code over and over again. Like normal events there are endless possibilities here but we tend to use common events for the following tasks:

1. Defining any dialog that repeats. Think of bankers or shop owners where dialog remains roughly the same all throughout the world.

2. News bulletins.

3. Healing events

4. and more!

Moving forward we will add new triggers to run common events. (Like entering a map, when an item or spell is used, when the player enters the game, etc) and the uses for common events will grow exponentially.

Switches/Variables

Switches and Variables are what drives events. You may have an event that tells the player, "Welcome to my game." that is supposed to run automatically but how would you stop that from appearing again? Simple, you tell the event to only run when a switch is off, and after it has ran the first time you turn the switch on.  You can set switches to on/off values and variables to any numeric value within events. Events can then change their actions based on these switches and variables.

In Intersect there are two sets of switches and two sets of variables. One set of each is on the player level and one is on a server or global level. Player switches and variables are unique to each player, if an event turns one of my switches on, another players switch can still be off. Global switches and variables have the same value for everyone. This way you can turn a global switch on to activate or disable event(s) for everyone. You can make treasure hunts where the first player to locate the chest gets the loot for the day.

To make your life easy we have an editor designed so you can label each of the variables and switches in your game so you know what they are used for.

Content/Show Off

Event Editor:

zixrXbOwdBp349xQRs.png

Available Event Commands:

fmBZES0ymFhHIqHylZ.png

Common Event Editor:

sdHDWNc4aQAOUYlDrz.png

Running a common event:

esAM3i4HKP40e0Tch4.png

Switch/Label Editor:

n5diL5wpZ27DjfEtvA.png

Map Full of Events:

V6dvV1SQCcKoPbJCAg.png

As always, feel free to post comments and questions below! We are excited to hear your thoughts on our progress!

Share this post


Link to post
Share on other sites

I posted in chat box that im new and really want to make an online 2d mmorpg and this is the engine i can finally do so with! It is looking amazing. You guys keep working hard on this, by the way its looking you could even make money from this engine by selling on steam or other places! Its cool that it will be for free but still giving you guys the motivation! Please keep updating it and dont let it die like eclipse or all the others, its looking amazing and ill be so pumped when i finally get to use it and start making a game !

Share this post


Link to post
Share on other sites

Global switches and Global variables are implemented as well?

 

That's the final straw in dumping my revision of Skywyre I've been working on and hopping my project over to Intersect.... GG Team, keep up the good work!

Share this post


Link to post
Share on other sites

Lol yes, I have this weird anxiety of releasing public information as I don't want the ideas stolen.... But soon, I've been working on something for awhile :)

 

Edit: Also, I will need a staff to continue after I transfer what I have now from Skywyre -> Intersect as it will be impossible to complete development by myself..... Can't wait for source as well, I have made so many changes to Skywyre (waste of time now in hindsight considering the engine switch) and will probably need source changes done eventually to intersect as well.

Share this post


Link to post
Share on other sites

Wow, common events are really impressive. With more triggers I can imagine so many things that once would have required coding replaced with events.

An idea maybe a trigger for reaching A level. Eg. Reached level 15, dialogue appears and gives you a certain spell.

Also, an event that displayed a graphic that can be closed would be useful in situations like talking to a signboard and displaying a big zoomed in version of that signboard, or a map.

Share this post


Link to post
Share on other sites
8 hours ago, Diefool said:

Lol yes, I have this weird anxiety of releasing public information as I don't want the ideas stolen.... But soon, I've been working on something for awhile :)

 

Edit: Also, I will need a staff to continue after I transfer what I have now from Skywyre -> Intersect as it will be impossible to complete development by myself..... Can't wait for source as well, I have made so many changes to Skywyre (waste of time now in hindsight considering the engine switch) and will probably need source changes done eventually to intersect as well.

Intersect will be open source, however I'm pretty sure JC would like to finish it first, get it out of alpha anyways. You can start using intersect right away, JC will make sure there is a way to upgrade from each new version of intersect. 

 

Share this post


Link to post
Share on other sites
1 hour ago, yeroC said:

Intersect will be open source, however I'm pretty sure JC would like to finish it first, get it out of alpha anyways. You can start using intersect right away, JC will make sure there is a way to upgrade from each new version of intersect. 

 

Same

Share this post


Link to post
Share on other sites
13 hours ago, yeroC said:

Intersect will be open source, however I'm pretty sure JC would like to finish it first, get it out of alpha anyways. You can start using intersect right away, JC will make sure there is a way to upgrade from each new version of intersect. 

I'm actually recreating the systems and objects I've used with the Skywyre event system in Intersect right now for my Raid on Valkoria project. So thrilled JC is supporting converting database objects to newer revisions as he releases updates.... this and the fact that global server-side variables are implemented and working with the event system already was the main reason I chose to switch (and the obvious reason being VB6 is shit). My BASIC is much more fluent then my C# though, but meh.... it'll grow in time :)  I appreciate the work you guys have put into this engine so much!

Share this post


Link to post
Share on other sites
7 hours ago, Diefool said:

(and the obvious reason being VB6 is shit).

Yes this new engine looks neat and all but let's be real, VB6 was and still is the best RAD language ever made. So please keep your nonsense to yourself.

Now for the event system itself. I've never used such a system so maybe this is already supported but can there be timed events? So every minute, event X activates? Etc.

Share this post


Link to post
Share on other sites
2 hours ago, Zesh said:

Now for the event system itself. I've never used such a system so maybe this is already supported but can there be timed events? So every minute, event X activates? Etc.

Yes

Share this post


Link to post
Share on other sites
6 hours ago, Zesh said:

Yes this new engine looks neat and all but let's be real, VB6 was and still is the best RAD language ever made. So please keep your nonsense to yourself.

Now for the event system itself. I've never used such a system so maybe this is already supported but can there be timed events? So every minute, event X activates? Etc.

Say what you like about VB6, we try not to promote it here. Whether it be the best RAD language or not it's still outdated, and typically slow. VB.Net and C# are much better options!!

 

Share this post


Link to post
Share on other sites

No point in debating what VB6 is and what VB6 is not. Use it if you'd like but if you want questions answered or you want programming help it's going to be a lot harder to find someone willing to help you and deal with that language/ide.

Share this post


Link to post
Share on other sites
17 hours ago, Zesh said:

Yes this new engine looks neat and all but let's be real, VB6 was and still is the best RAD language ever made. So please keep your nonsense to yourself.

I just meant accessibility in a profit form. VB6 is by FAR a language I am more fluent in and comfortable with (in fact, I'm more than willing to help in the VB6 based engines and fully support their use); however, looking at it from a professional view I beg to differ. The compatibility issues with newer OS setups and workarounds necessary to run an eclipse/mirage-based engine are not professional at all and will not attract a major demographic. They are both great options and I still personally love Skywyre for everything it is. Just a personal choice for a developer to choose it's source and I am definitely not trying to sway anyone's opinion, just giving credit where credit is due. Credit is definitely due, and hats off to the Intersect team for the evolution of this engine branch!

This is off-topic and I apologize for sparking off-topic comments and conversation, but I am willing to further discuss this in a different forum/thread with a post entitled "VB6 vs C# engines pros and cons" or similar.

Can't wait to see more updates, and will be working more on my Intersect project tonight woot woot.

Share this post


Link to post
Share on other sites

i realllly like this. i'll mess with it and try to figure it out, seems simple enough.

@diefool only language i'm fluent in is english, the more logical the command system is the better. when i was, what, maybe like 12 or some crap i tried to teach myself VB and was annoyed at the term object oriented... so i just designed fun little applications where the buttons didn't do a damn thing LOL. flow diagrams where you attach statements to outcomes or something like that would be kinda cool. you guys create the language, but have two separate modes for editing this stuff, advanced for the programmer brains and then simple mode for the visual graphical people.

 

EDIT: be real guys, you probably would REALLY like it if this engine got widespread acceptance outside of the population of users who have done little more then a hello world. there are imaginations out there that just cannot grasp even UNITY (thats me, i'll mess with the shadow detail and give objects textures but i have no CLUE how to make even a simple primitive respond to my inputs so i can move it around in "play" mode)

Share this post


Link to post
Share on other sites

We have tons of experienced programmers located on the forums ^^ Also, with events, this will save you LOTS of programming and is extremely easy (I use that word with caution) and logical.

Share this post


Link to post
Share on other sites
On 7/1/2016 at 7:42 AM, navjack27 said:

@diefool only language i'm fluent in is english, the more logical the command system is the better. when i was, what, maybe like 12 or some crap i tried to teach myself VB and was annoyed at the term object oriented... so i just designed fun little applications where the buttons didn't do a damn thing LOL. flow diagrams where you attach statements to outcomes or something like that would be kinda cool. you guys create the language, but have two separate modes for editing this stuff, advanced for the programmer brains and then simple mode for the visual graphical people.

I completely agree... I started with QBasic (There was no IDE or windows forms back then, it was all code and came packaged with some versions of MS-DOS)

The event system is designed for people who do not know how to code. When utilized properly a lot of systems that would normally have to be hard-coded can be implemented right into the map editor without typing a single line of actual code. I like this perspective on things as well, the developers will most likely make good use of this.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this