Jump to content

Rick

Members
  • Posts

    7,936
  • Joined

  • Last visited

Everything posted by Rick

  1. Ironically, things that have shipped can be sh** I know for me, it's not 100% about getting a finished game if I think the game is sh**, I'd rather not have made it. Most of the programmers here could make a very simple FPS adventure game where you open doors, and have a lantern in your hand, and check off things to do, but honestly for me I'm not excited by those games. You generally want to make games you are excited about, and the bar for those games are generally high for most people. So high that they basically become unattainable by a single person or even a small group. So for me it's not just about having a finished game. The game has to be good. [EDIT] Someone in the video game business to make money first and make fun/good games they love second, would probably be the best person to finish their games.
  2. You can basically do the same with LUA. Most game companies that expose LUA for gamers just strip it down so you can't do that, but out of the box you can do pretty much anything with it.
  3. Seems it could be a substitute for something like LUA, for higher level scripting.
  4. I thought you said easier and more enjoyable
  5. I agree. I think scope creep falls into the same reason. I know I've had a simple game element up and running, but wasn't happy the simplicity, so I try to add more and more to make it "cooler", but it soon becomes a big side track and interest gets lost.
  6. Here is how you can simulate it. Basically you create pure abstract classes to act kind of like interfaces for the different types of callbacks. Then derive the classes you want to have these from that interface. Then you define one normal C function for each callback type and just cast the first entity to that interface type and if it's not null call the virtual method. This isn't tested code, just doing some stuff from memory, but it gives you the general idea. void _stdcall EntityCollisionCallback( TEntity entity0, TEntity entity1, byte* position, byte* normal, byte* force, flt speed ) { Collider* b = (Collider*)GetEntityUserData(entity0); if(b != NULL) { b->OnCollide(entity1, position, normal, force, speed); } } class Collider { public: virtual void OnCollide(TEntity ent, byte* position, byte* normal, byte* force, flt speed)=0; }; class MyBody : public Collider { private: TEntity body; public: MyBody() { body = CreateBodyBox(); SetEntityUserData(body, (byte*)this); SetEntityCallback(body,(byte*)EntityCollisionCallback,ENTITYCALLBACK_COLLISION); } void OnCollide(TEntity ent, byte* position, byte* normal, byte* force, flt speed) { } };
  7. http://lua-users.org/wiki/SleepFunction It's OS specific though it looks like. Not that it matters since LE is Windows at the moment.
  8. Not from my experience. Unity seems to only be C# or Javascript (their own version of it)
  9. .NET filewatcher ftw. This is how I do it for my components when a new component is added. No need to shut down the application and reopen.
  10. ewww Unix. I feel dirty now. *takes a shower*
  11. Engine.exe is something Josh made to run the Lua stuff. From what I know he didn't provide the source to engine.exe (I could be wrong here), so it might not be that simple.
  12. If that's the case NA would you be using Phyre Engine? If so, why? I assume Phyre is more of what a traditional engine is and not like LE where it's purely an API. I like making tools too, but if the ultimate tool was already made and affordable, then why not use it? Everyone is trying to create the ultimate tool for game deve though. That's the challenge and the fun
  13. You could make this Beam an object and have a pointer to it in each tower. Then when you create a Beam object assign it the to towers that make the connection. Then when your Tower object is destroyed check if the Beam object it has is null and if not destroy it also.
  14. I don't think those negative comments about LE's performance are relative to anything. People who don't know how those kinds of things work just expect certain results. They most likely played a game that seemed to have thousands of animated/static models and endless terrain and run at 60 fps on their PC and when they tried to get the same with LE it didn't happen. They often don't realize that tricks are used to get such things most times. That plus most aren't programmers and it makes sense why they would post such things. If might not be valid, but one can see why they would make such negative posts.
  15. it's cool. You can leave whsiper's photo on there. Just thought it was funny
  16. So when using Core.Create... if I want to get that object I have to create a new type and pass the pointer to it? Good thing you are creating the new wrapper because I don't like that Core design.
  17. So what's up with Core.CreateX commands all returning IntPtr? I store pivots in a dictionary of objects with a key of string, but having issues casting back when I need it. Says can't cast from IntPtr to Pivot. How should I be casting things back to their type when they are created with Core.Create...
  18. Is this the new front page scrolling thing? I just noticed that in the community scroll panel it has a quote with my name and my quote, but shows whispers picture I don't care, just thought it was funny.
  19. I think that's they key. In LE Josh has given us the ability to make our own system for our games. In other engines like UDK the system has been designed for you to use already, and you can't get around it. That doesn't make the system bad or anything, it's just the fact that you have to use the system.
  20. I do, but I'm at work at the moment and can't access it here.
  21. I don't think Mesh should have a Load() method. It should be in the ctor I think.
  22. I agree that it should load in the constructor, but would still like to check the object against null instead of the .Pointer variable. A file might have been deleted, so I think checking for null after loading is something that should still happen.
  23. I disagree with that. The main loop can be hidden and still not be limiting. Most engines do this because every game works the same when it comes to that stuff. Either way LE isn't an engine, but a library. I like it because it is a library and allows me to make my own engine.
×
×
  • Create New...