The red line is a temporary mining laser beam that disappears moments after the screenshot. The green +3 and +9 are the amount of minerals mined (for a total of 12 this time-frame), and fade as they move up
yeah, I totally stole the idea from a friend of mine
It can be used for so many things, like health bars can be completely separate from the objects they display the health for. They'll listen for move events and healthChanged events from whatever they are attached to, and update accordingly
Starcraft does this (apparently)
I haven't done that part yet, but it's on my list
I even take eventing one step further than my friend and have used it as the basis for my networking system. The network listens to all of the important events and is able to send those over the network and replicate the results of the event on the other end.
I'm actually a little bit nervous about doing it for my project. Just because I typically have tens of thousands of entities. Any sort of indirection adds up quickly for me. ;)
And really, it doesn't take a lot to start small. Just add... let's say an "EntityDying" event. You'll find places to use it, trust me
My AI listens to it's target's EntityDying event so that it knows when to look for a new one, instead of doing: Is my target still alive? is my target still alive? is my target still alive?...
I already have those events. Just that right now, they only propagate up through the entity. It'd probably be cheaper if I had things register for the specific sorts of events they want, instead of propagating everything through the entity's AI and similar control classes.
Sorry, yes. I have a callstack that looks like: "Character::HandleEvent(event) -> Owner::HandleEvent(event) -> Brain::HandleEvent(event) -> CurrentBrainGoal::HandleEvent(event)"
yeah, in C#, it looks a little different than what you're describing (I think). My call stack would be something like LaserMiner.Update() -> Accumulator.HandleAccumulationEvent() -> FloatingText.Ctor() -> then all the way back into the LaserMiner.Update()
@thedaian, You have some good videos of IsoTower, what do you use to make them?
@TrevorPowell It wasn't even playable then, it was in very early prototype / concepting stages. I left Big Huge the same day they interviewed the Oblivion lead designer... who they hired for it.
I don't think I've seen him review an MMO. I have trouble imagining that such a review wouldn't mostly consist of complaining about the game's community.
I know that this is a difficult question and I hope I can convey my meaning. Over time I've used many different engines from XNA over Unity to Panda3d and even tried native directX once. My final impression is that an engine basically serves to do this:
implement a scene graph
offer classes lik...
and then proceeds to ask about 5 more questions relating to openGL and panda3d, I begin to get the feeling that "pure" OpenGL is not very productive for him
user4704
4:28 PM
@thedaian Indeed.
user4704
Office closed again today on account of Seattle Is Unsure What To Make of Ice From the Sky.
That's what I was getting at the "Java programmer gone game dev" because a java programmer would want to make threads for things that are all happening "at the same time", and when that's applied to games, you get: "every time an enemy spawns, it has a thread with it"