Advertisement Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Everything posted by Ectara

  1. For a moment, I thought we were discussing Japanese cuisine.
  2. Ectara

    Slick2D Camera movement

    It isn't quite moving the map. You are moving the world. This includes the player, and every other actor in the scene. Handle all of your collision logic and other such events as if the world is all there is, and don't think about the camera. Then, when all is said and done, draw the world offset by the camera's position. The drawing of the world and the logic of the entities within should and must be separate.
  3. Ectara

    Slick2D Camera movement

    This one   Different games have different priorities for what's shown on screen. For some games, it makes sense to have the "camera" focused on the first player only, for others, maybe the center of the line segment between the two players, and for others, still, the map would be scaled to fit the screen so that all players are visible at all times. Alternatively, if you decide to have two viewports instead of one (splitscreen), you can draw the map twice, and each half of the screen is centered on each respective player.   It all depends on your game.
  4. Ectara

    Slick2D Camera movement

    Which part are you having trouble understanding?
  5. Ectara

    Slick2D Camera movement

    The concept of a "camera" is an illusion; it's essentially moving the world in the opposite direction, to give the illusion that the "camera" is moving. If there is multiplayer, you have to decide what is important to you, and how many viewports you want.
  6. I use a ThinkPad W530 for my programming at home (at work, I don't have a choice in hardware). Most ThinkPads (if not all) don't have a numeric keypad.
  7. What's the processor specifications (cores, hyper-threading, etc.)?
  8. Ectara

    Another way to fix your timestep

    I agree with @duckflock; while it does cut down on temporal aliasing, it has three issues that jump out at me:   It seems as if this drops updates rather than frames, which can lead to a discrepancy in gameplay (people trying to cheat online/trying to engage "slow-motion" by increasing the load on their machine). If update or rendering takes too long, all expectations are gone; all of a sudden, rather than the game busy waiting (and not repainting. Black window if you move it around before it repaints?), time no longer matches wall clock time: 1 second in real life no longer counts as a second in game, and the game enters slow-motion as they update slower than realtime. Busy loop consumes quite a bit of CPU time. I would recommend writing an actual program that demonstrates this concept, to better get your point across. edit: Editor doesn't like bulleted lists?
  9. Ectara

    A little brain teaser

    high = val / 4294967296; // or high = val >> 32; if having one right-shift is a requirement low = val  - (high * 4294967296);   One more operation, I suppose. Alternatively, if the IDE doesn't try to be clever:   high = val / 4294967296; low = (val * 4294967296) / 4294967296;
  10. Ectara

    A little brain teaser

    Non-bitwise permitting +, -, *, /, and % ?   high = val / 4294967296; // or high = val >> 32; if having one right-shift is a requirement low = val % 4294967296;   // low = 140, high = 120   I feel like I'm missing something.
  11. Ectara

    Feedback on my kickstarter

    What kind of space pipe am I looking at here?
  12. Ectara

    The intersection between cubic Béziers

    I started sweating just reading that function call.
  13. I read over the Kickstarter, and many of the paragraphs kind of shocked me, most of them were mentioned earlier in this thread. I'm another person that you can PM for feedback; I'd be willing to help you out.   As an aside, I read over the thread, and I don't believe you mentioned the part where you threatened legal action against people speaking negatively about you. Mentioning that would probably have changed the advice given by people that haven't seen the Reddit post.   Try to move on and learn from this one, but there isn't much that can be done to save it; when the time comes (later on in life) for another Kickstarter (for a different product), do your best to instill that you have changed entirely from the first attempt, have a polished product that needs finishing touches, and a team already formed to back your (sensible) goal. Don't mention the first one, don't comment on it, don't link to it: pretend it doesn't exist.
  14. That's too hard of a cat for me.
  15. Ectara


      Are you referring to this nightmare? What is this Lugaru business, and why does it hurt so much?
  16. Ectara

    What a web I Weave !

    We can go one better. Screw storing source code in version control, let's store the AST there instead. That way we can convert the AST back to whatever formatting the particular user desires when checking out the repository, and the version control will never, ever experience whitespace merge errors again...   I would love that. This could probably be used to some degree of success for other cosmetic effects, like maintaining optimal character counts per line.
  17. GET, then store in session variables, then redirect to an export script that reads them?
  18. Ectara

    Post your desktop (2014)

    I have one of 20 images from the Persona game series randomly selected every 5 minutes, so it's constantly changing. All I have for icons are drive icons for quick mounting and unmounting removable media.
  19. Ectara

    Increment Frame Bug

    Those aren't error messages; that's part of a stack trace. Please post the full output.
  20. Ectara


    Having an identifier or typename wrap mid-token is jarring for me.
  21. Ectara


    90º monitors / 9:16 aspect FTW!! I use a 1920*1080 and a 1440*2560. Also, when using a 16:9 aspect, I always split the IDE down the middle so I can see two files at the same time  No need to strictly stick to the traditional 80 characters (as derived from when we coded via terminals), but it's still a good idea to resort to line-breaks after some point.  I tend to compromise; I keep my comments wrapped at 80, and I try to keep long expressions wrapped, but I will not break things in awkward places, like splitting six parameters into one parameter per line if their names and types are too long.
  22. Ectara

    Apparently, no so simple Math.....

    In pokemon, all offensive attacks do at least one damage even if they should be 100% negated(except for move types that are uneffective against the opponent types(i.e ghost/normal iirc)) so, let me just fix chubu's real quick: health -= max(attack - defense, 1) I was just about to say that. :)   If you find yourself saying that, consider making it a method of the class.
  23. Don't forget that the paths are relative to the file being included, not the current working directory of the build process, so be sure to double-check your paths; if the path is specified wrong, it may attempt to check the path relative to the paths in your include path environment variables or commandline switches. This would cause it to work with the -I switch, but not otherwise, if this is the problem.
  24. Examine your compiler's included headers, and Ctrl+F/grep for "template". A five minute examination would have dispelled your counter-argument.   Another good use of generic programming is extensibility. Code that is templated can be used later in a way that the original coder had yet to conceive by substituting new types and values in place of the template parameters.
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!