This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
31
General ENIGMA / Re: ISO C99 Scalar Boolean Casting
« on: October 23, 2013, 04:44:54 am »
The problem is this:
If noone evaluates to true in Studio, then they changed it. Its false in GM8 and lower.
In GM, a value of -4 is false, as are all other values less than 0.5. In ENIGMA, only a value of 0 is false.
If noone evaluates to true in Studio, then they changed it. Its false in GM8 and lower.
32
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 22, 2013, 11:33:19 pm »Ideka, that is like 3rd time we've brought up Steve Jobs lolO rly?
33
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 22, 2013, 09:59:40 pm »
Well, see, you seem to think that getting drunk or high will surely end up making you and your whole life miserable. So you urge us not to ever try any drug (exept for caffeine, which is of course OK).
While I thank you for your consideration, I have to tell you you are wrong.
Take Steve Jobs for instance. He is known to have been quite the acid dropper back in the day. Now, I didn't like the man very much, but I can't deny he was successful, and probably lived a happy and fulfilling life. And he actually claims the LSD helped him with that.
While I thank you for your consideration, I have to tell you you are wrong.
Take Steve Jobs for instance. He is known to have been quite the acid dropper back in the day. Now, I didn't like the man very much, but I can't deny he was successful, and probably lived a happy and fulfilling life. And he actually claims the LSD helped him with that.
34
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 22, 2013, 09:43:00 pm »Actually, caffeine can kill you if you take too much: http://www.energyfiend.com/death-by-caffeineWell, you kind of wentTKG, instead of trying to excuse your behavior so it doesn't contradict your own beliefs, why don't you just open your mind a bit and accept that drugs aren't inherently bad?How the heck am I excusing what behaviour? O__O Why don't you just open your mind a bit and accept that drugs will do nothing but make you more miserable. My beliefs and what is right or wrong has absolutely nothing to do with this topic.
"Drugs are evil, but not coffee. I drink coffee so coffee is OK. Caffeine is a silly, silly drug anyway, so it must be OK."
? Are you so very stupid that you honestly don't comprehend something so amazingly simple ? Some drugs have worse effects than others ? Some can *kill* you and others make you get a little extra tired or hyper ? (oh dear, coffee drinkers are going to hell lol) please use your brain, I know you don't use it often, it may hurt and be hard. Is that too complicated for your injured head ? I'm seriously at shock that has got to be the most idiotic comment and comparison I ever heard. XD I'm seriously suffering from the giggles I can't take it anymore how is it humanly possible for such a perspective to be so warped and twisted. ? Like, please do tell me you aren't being at all serious because this is quite the joke.
Yeah I'm totally justifying myself that I drink coffee (oh no, coffee, it's the end of the world lol). I'm not justifying myself for my current rudeness in this post either I hope you have enough brain cells to realize christian or not I'm human if you throw personal bullcrap at me aimlessly and ignorantly I'm sorry that will make you elligable to get a harsh response in turn for such overflowing award winning levels of stupidity.Even Christians have their breaking point. Satisfied at all, asshole?
At this point I can't really take you seriously.
Nothing personal to anyone, but I've just had it.
Oh but no, you drink coffe but not too much, do you?
Well tell you what, I smoke weed but not too much either.
It's the same. Get over it.
Also, I'm not a christian and I'm not personally insulting people, even after being insulted myself.
35
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 21, 2013, 10:30:34 pm »Well, you kind of wentTKG, instead of trying to excuse your behavior so it doesn't contradict your own beliefs, why don't you just open your mind a bit and accept that drugs aren't inherently bad?How the heck am I excusing what behaviour? O__O Why don't you just open your mind a bit and accept that drugs will do nothing but make you more miserable. My beliefs and what is right or wrong has absolutely nothing to do with this topic.
"Drugs are evil, but not coffee. I drink coffee so coffee is OK. Caffeine is a silly, silly drug anyway, so it must be OK."
36
Ideas and Design / Re: ENIGMA Entity-Component-System?
« on: October 21, 2013, 12:48:59 pm »Consider this piece of Java:Aight, now tell me, can you come up with an algorithm that, given every entity that exists in the game world and every function like that one you show me, automatically figures out which entities can be passed to which funcions and does so one by one?Code: (java) [Select]void tank_logic(Object entity) {
assert(entity instanceof TankArmor);
TankArmor armor = (TankArmor)entity;
assert(entity instanceof TankAI);
TankAI ai = (TankAI)entity;
MysticalChoiceList choices;
if (armor.isReallyBadAss())
choices = makeBoldChoices(ai.getSomeProperty(), ai.getSomeOtherProperty());
else
choices = makeRationalChoices(ai.getSomeProperty(), ai.getSomeOtherProperty());
// ...
}
Quote
> Apart from not being able to swap components (which is, for example, a perfect way of implementing a finite state machine),Well, in an ECS you may have a component for each state and a system for each state, and when you want to change state just remove the components of the current state and plug in the ones of the new state (all of that would be taken care of automatically, perhaps as described here).
Why are you using a finite state machine as an example of this? They are the perfect example of something to do at compile time. I assume you're thinking of the game's internal representations of states in terms of such a machine; for instance, in a Mario game, Mario can move between being small, being big, being fire/ice powered, being invincible, etc, etc, and so you'd just keep piling behaviors on. For that, the ability to just tack on an invincibility behavior to Mario is extremely useful. What's the big difference between doing that, and having Mario inherit from an invincible class? You aren't saving anything; you're moving a check from inside an interface to in a boost bitset. I suppose you could be saving upward of 63 bits by doing this, but I hear memory is cheap. As requested, can you give an example of where this could not be accomplished using interfaces?
Can it be done with multiple inheritance? I... guess? You could give each Component an "active" flag or something?
Quote
> long inheritance trees are complex and messy, and couple everything together.OK, I get that now.
Let's clarify here: do you mean long inheritance trees, or do you mean deep inheritance trees? If you're complaining about the former, you and I really don't see eye to eye, and I'm much more compelled by complaints of a boost bitset and a pointer list. If you're complaining about the latter, I have good news: that shouldn't happen. See the Java code above for the use case you've been describing.
I guess I meant deep by the way. Didn't know there was a difference.
Also will you stop it with the boost bitset thing. That's just something an specific ECS framework implementation uses.
Quote
> Things like collision detection and resolution is also easy for much the same reasons. You just need a CollisionSystem that requires a PositionComponent and a SpatialComponent (and maybe a 'flag component' CollideableComponent, so you can have stuff with position and spatial information that doesn't collide).OK, that's cool, but you would have to loop through every entity in the world and check each and every one of them.
Last I checked, [snip=java]if (entity instanceof CollideableComponent && entity instanceof PositionComponent)[/snip] is valid Java, provided CollideableComponent and PositionComponent are both classes. Any reason I might want to remove CollideableComponent or PositionComponent from an entity rather than remove the entity from some list, temporarily? Or give the component a boolean, instead of using a fucking bitset?
In an ECS you are just passed an iterable with all the entities that have the required components and you are ready to go.
Quote
In summary, the two mechanisms are arguably identical except one is done at runtime.I certainly see the similarity, but they're far from identical .
37
Ideas and Design / Re: ENIGMA Entity-Component-System?
« on: October 21, 2013, 02:48:24 am »
I can't beleive you're comparing ECS to multiple inheritance. Apart from not being able to swap components (which is, for example, a perfect way of implementing a finite state machine), long inheritance trees are complex and messy, and couple everything together.
Here, say you have a class that inherits from two other classes. How do the parents communicate with each other? They either don't, or do so in a completely ass-backwards way.
In an ECS you can just have two systems that require the same component.
Also see: http://gamedev.stackexchange.com/questions/33062/doesnt-multiple-inheritance-solve-all-problems-that-entity-systems-do?rq=1
An ECS also turns this:
Into this:
Since the same operation is run looped, threading is EASY AS FUCK. You just set some systems to run in parallel and/or to process their entities in parallel and boom, threading done.
Things like collision detection and resolution is also easy for much the same reasons. You just need a CollisionSystem that requires a PositionComponent and a SpatialComponent (and maybe a 'flag component' CollideableComponent, so you can have stuff with position and spatial information that doesn't collide).
With that, CollisionSystem has a bunch of entities with a position and spatial information that have to be rearranged so they don't collide.
There's also this article if you want to do more reading: http://www.richardlord.net/blog/what-is-an-entity-framework
I warn you though, the code examples are in actionscript (!).
Here, say you have a class that inherits from two other classes. How do the parents communicate with each other? They either don't, or do so in a completely ass-backwards way.
In an ECS you can just have two systems that require the same component.
Also see: http://gamedev.stackexchange.com/questions/33062/doesnt-multiple-inheritance-solve-all-problems-that-entity-systems-do?rq=1
An ECS also turns this:
Code: [Select]
Subtype A
---Operation 1
---Operation 2
---Operation 3
Subtype B
---Operation 1
---Operation 2
---Operation 3
Subtype C
---Operation 1
---Operation 2
---Operation 3
Into this:
Code: [Select]
Operation 1
---Subtype A
---Subtype B
---Subtype C
Operation 2
---Subtype A
---Subtype B
---Subtype C
Operation 3
---Subtype A
---Subtype B
---Subtype C
Since the same operation is run looped, threading is EASY AS FUCK. You just set some systems to run in parallel and/or to process their entities in parallel and boom, threading done.
Things like collision detection and resolution is also easy for much the same reasons. You just need a CollisionSystem that requires a PositionComponent and a SpatialComponent (and maybe a 'flag component' CollideableComponent, so you can have stuff with position and spatial information that doesn't collide).
With that, CollisionSystem has a bunch of entities with a position and spatial information that have to be rearranged so they don't collide.
There's also this article if you want to do more reading: http://www.richardlord.net/blog/what-is-an-entity-framework
I warn you though, the code examples are in actionscript (!).
Quote
This, he seems to handle using boost::dynamic_bitset to flag entities as having certain components. Personally, the solution makes me want to rip off my own skinIt's usually done that way because it's fast, I believe. All of that is abstracted away though, so you don't really have to worry about it.
38
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 20, 2013, 10:07:52 pm »
TKG, instead of trying to excuse your behavior so it doesn't contradict your own beliefs, why don't you just open your mind a bit and accept that drugs aren't inherently bad?
39
Ideas and Design / Re: ENIGMA Entity-Component-System?
« on: October 20, 2013, 09:33:58 pm »
I doubt you guys read the entire article. What all of you seem to be talking about is the somehow more widely known, clunky, old, inconvenient, not really useful ECS way of doing things.
In a good ECS, components are not "behaviours". Components ONLY have data (and maybe getters/setters). Systems have behaviors. All defined systems process all game objects that have certain components.
In a good ECS, components are not "behaviours". Components ONLY have data (and maybe getters/setters). Systems have behaviors. All defined systems process all game objects that have certain components.
40
Ideas and Design / ENIGMA Entity-Component-System?
« on: October 20, 2013, 08:15:58 am »
Check it out: http://www.tomseysdavies.com/2011/01/23/entity-systems/
Personally I think this is The Shit (tm).
Do you guys think something like that could be elegantly done in ENIGMA? Because it's possible in GM, but it's a pain in the ass. Probably really slow, too.
Here's a C++ ECS implementation: https://github.com/miguelishawt/anax and there's also https://github.com/alecthomas/entityx
Personally I think this is The Shit (tm).
Do you guys think something like that could be elegantly done in ENIGMA? Because it's possible in GM, but it's a pain in the ass. Probably really slow, too.
Here's a C++ ECS implementation: https://github.com/miguelishawt/anax and there's also https://github.com/alecthomas/entityx
41
Off-Topic / Re: Github Labels
« on: October 18, 2013, 06:02:46 am »
Oh, that.
AFAIK, only contributors can label issues.
AFAIK, only contributors can label issues.
42
Off-Topic / Re: Github Labels
« on: October 17, 2013, 09:01:47 pm »
What do you mean exactly?
You want to:
a) Ask the developers to implement a feature for you?
b) Ask the developers to merge some code you've written that implements a feature?
c) Something else?
You want to:
a) Ask the developers to implement a feature for you?
b) Ask the developers to merge some code you've written that implements a feature?
c) Something else?
43
Off-Topic / Re: Illegal (and Legal) Drugs
« on: October 15, 2013, 01:01:23 am »
TKG check this out before saying drugs are addictive: http://mindhacks.com/2013/09/13/drug-addiction-the-complex-truth/
And anyway, anything in excess is bad.
And anyway, anything in excess is bad.
44
Issues Help Desk / Re: os_type [gms constant]
« on: October 02, 2013, 02:37:39 pm »It does make sense. TKG apparently wants to know if the game is running on ENIGMA or GM or whatever.Quotehttp://enigma-dev.org/docs/Wiki/Device_constants
I just checked and os_type is already implemented and working. It returns os_windows, os_win32, os_linux, etc. Depending on your platform.
No TKG I said Ideka's response did not make any sense. That said, png support was working idk how the fuck it broke it quit workin for me too.
BTW, TKG, why in the world would you use bmp images?
45
Issues Help Desk / Re: os_type [gms constant]
« on: September 29, 2013, 01:53:53 pm »http://enigma-dev.org/docs/Wiki/Device_constantsJudging from the first post, it seems like time-killer-games wants to check which engine the game is running in for some reason.
I just checked and os_type is already implemented and working. It returns os_windows, os_win32, os_linux, etc. Depending on your platform.