Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Everything posted by AcePilot

  1. AcePilot

    Favorite comedians?

    And here I thought that Stephen Colbert and Jon Stewart were staples in every human being's TV-diet...
  2. Quote:If i don't miss what you are saying, the flow will be liked this: 1. player/user clicked on button 2. send an event to event manager with button id 3. event manager process the event and ask GUI/overlay manager to find the purpose with the button id 4. GUI/overlay manager say player/user clicked the "exit" button and return to the event manager 5. event manager do the action based on the return value that get from the GUI/overlay manager Exactly. Step 3 is a pretty elegant way to do things. I just hardcoded the id's into the event manager [rolleyes]
  3. AcePilot

    c# then c++?

    The two languages are roughly similar in syntax, but have different sets of features. I would say C# is easier, and if you are beginning programming it would be a good choice for you to learn. There is no need to switch to C++ after you learn C#, unless you want to program at a lower level or on embedded systems. There are many tutorials on C# around the net. Googling "C# tutorial" will get you a plethora of them, such as this one. Edit: beaten to it.
  4. I designed a GUI for a java programming class a while ago and I encountered the same problem. My solution was a bit messy, but it worked. Basically, the event manager had a single function void handleEvent(int id, void *data) // It was actually Object data since there are no void pointers in java When there was an event, the event detector (whatever you want to call it) called the handleEvent function, with the id of the element that recieved the event and a pointer to some extra data. The handleEvent basically contained a huge switch/case block. To make this less messy, you could have multiple functions, such as void handleButtonClicked(int buttonID, int mouseX, int mouseY); void handleTextTyped(int textboxID, char typedChar); void handleTextClicked(int textboxID, int mouseX, int mouseY); ... Each component would then have to be assigned an id. I used a two digit code for this. If I wanted to make a button on the first panel, it's ID would be 11. If I wanted to add another button to the same panel, it woule be 12. If I wanted to add a button to the second panel, it would be 21. You get the idea. Hopefully this works for you.
  5. AcePilot


    You can use pretty much any language that supports sockets and networking. The platform and development tools you use depends on that language choice. For example, if you want to code it in C++, Visual Studio Express would be a good choice. If you really want to make this game as your first project, it will take a lot of design. You will have to decide on a networking architecture such as client-server or peer to peer. If you choose the first, you will have to design and code two programs instead of just one. Then you will have to come up with some type of secure protocol that will allow different players to communicate with each other or the server. The game logic itself will be quite simple since this is a card game, and will probably take up only around ten percent of your time. Graphics also shouldn't be a problem. I would suggest you start off by reading up on networking, then moving on to the game logic and network code. Try to get that done first, and worry about the money part later. Hope that helps. Good luck.
  6. You're not a real programmer until you've written a real program.
  7. AcePilot

    Do mathematicians understand Physics?

    Quote:Original post by socratus The dragon theory was created a long time ago. The quark theory was recently created. The dragon is a strange beast. And the quark is also a strange beast. Both of them are from one myth. Only different times gave this myth the different names. Socratus. Interesting article by Vertner Vergon. There is a difference. The quark theory actually helps explain experimental lab data. The dragon theory doesn't help prove or explain anything. I think that's why we chose one over the other.
  8. AcePilot

    Faith, God and Santa Claus

    Quote:Original post by sheep19 Quote:Original post by HappyCoder One thing I want to make sure you understand is that people who beleive in God don't do it blindly, and they aren't idoits. It seems to me that people who back their beleifs solely on science will build up quite a condecending additude towards those who base some beleif on faith. I beleive on God. I have faith that he exists. I also really enjoy science and I don't ignore anything in science that seemingly goes against my beleif on God. Rather I try to see how scientific knowledge can be joined with my religion. Thus far there hasn't been anything that could scientifically disprove the existance of God. The scriptures describe a lot of events and miracles, but rarely explains how God does such things and how he has his power. Although science is not able to explain God's power. I think it is discovering some of the processes that God has used to create everything. The only thing I know about God is what I learn from the scriptures and God's prophets. He only tells us what we need to know, and not always what we want to know. I personally think that there is something of a science behind God's power, it's just something that we don't understand. What I have said are just my own fillers for the things that God has not revealed, it is not anything that I have heard in church or anything and there is a good chance that many of my ideas are wrong. So when talking about beleifs with releigious people please don't view us being stupid. I think that discrediting somebody elses findings or ideas because it goes agaist our own view is stupid, expecially when there have been many people who have come to the same conclusion. I think that actually applies to both theists and atheists. That's very correct. I believe in God too. Why do people have to see something to believe it? Why don't they believe that there is something more powerful than them? Can you see the wind? No, you can't. God is like that. You can't see him, but you can see his actions. Thats the thing. Most atheists would believe in God if one could show them an action or event that could obviously be the result of a God. Otherwise, no evidence = no God. I personally think the whole debate comes down to interpretation of what happens around us. Some take the recovery from a disease to be an act of God, some take it to be a result of natural laws.
  9. Mithrandir: I am not in university yet so I'm just guessing here. Since university is the place that takes a person from n00b to developer (some high schools offer programming courses though), and after university the individual finds a job and starts developing, I think the university would be to blame here. School tends to give me a 'just get it done' habit. If I need to write a program to help me with math, I don't care what the code looks like as long as it gets the job done. Now I'm guessing that university level courses have the same effect? If they do, maybe an assignment that requires one to constantly update code over a period of time would help. + $0.02
  10. I don't know about you guys, but whenever I code in C++ I randomly feel at ease with the IDE and with my program. Everything is under my control, and I can use whatever I want to solve the problem, even if it means 2 hours of debugging memory bugs. Basically, its like programming the old BASIC-based computers. Other languages such as C#, java, or python might be 5x more productive but just don't give me that feeling, which is basically the only reason I don't do them. Quote: Original post by capn_midnight Since this is apparently bash-on-c++ day, I can't stand header files and having to update methods signatures in TWO places. I actually find that more productive for me in the long run. If I were to decide I need a graphics.cpp file, I would just randomly start writing code and end up with a big mess. Headers, on the other hand, force me to think up an interface (the main functions) first, making me brainstorm everything a bit. When you realise that some functions in your initial interface are crap, or their definitions are messed up, then thats another story.
  11. AcePilot

    Its my day off! WOOHOO!

    Steal your neighbor's ak47, his car, and his kitten. Then pwn some n00bs.
  12. AcePilot


    Even after some in depth research I am unclear on to the exact origin of the words 'pwn' and 'pwned'. Are they simply common typing errors of 'own' and 'owned'? (This is quite likely since o and p are quite close together on the keyboard. Just Curious.
  13. AcePilot

    Role Playing at GDNet

  14. AcePilot

    Game balance tool

    You are probably going to have to design such a tool on your own. Level design is not as easy as it looks... I`m pretty sure I`ve seen relatively thick books on the subject before.
  15. In my engine, I had a problem which this method could have fixed. When the client called the LoadTexture function, it returned a pointer to a texture. TexturePointer -> TextureObject All the DrawTexture function then had to do was to dereference the TexturePointer to get to the texture, and then draw it. However, the problem was that the TextureObject was managed in a dynamic array, in which data was shifted around a lot. So whenever the memory location of the TextureObject was changed, TexturePointer became invalid. If the dynamic array management system had a copy of TexturePointer, it could update the value of that variable (so basically changing where it points) each time the array was shifted around. I had to use a pretty retarded solution... The client passed a pointer to TexturePointer to the engine so the engine could update TexturePointer.
  16. I don't see anything wrong with your solution (interfaces), since they give you the functionality you desired. However, if you think java interfaces are a sort of multiple inheritance hack, then you can do something like the following: class Car { private: Drawable *drawable; Moveable *moveable; public: Car() { drawable = new Drawable("Car.bmp"); moveable = new Moveable(2, 6); } Drawable *GetDrawable() { return Drawable; } Moveable *GetMoveable() { return Moveable; } } int main() { Car *car = new Car(); car->GetDrawable()->Draw(); car->GetMoveable()->Move(); List<Movable *> movableStuff; movableStuff.add(car->GetMoveable()); movableStuff.add(car2->GetMoveable()); ... }
  17. AcePilot

    How to remove a critter?

    "Chemical Ali" could have helped you with this. Too bad he's gone.
  18. I guess it all depends on personal choice. Each programmer has their own system of naming functions, and they pick whatever makes the most sense to them. However, sometimes the choice is more systematic. You gave the example of a choice between OnInput, ProcessInput, and HandleInput. If the input function is the kind that is called only when something like a keypress has taken place, OnInput would be a better name. If the function is called each frame and checks to see if an event has occurred, then both ProcessInput or HandleInput would work. Also, the choice could depend on the context. Say your render function is called OnPaint. In this case, calling the input function OnInput would lead to better overall organization than if you called it ProcessInput.
  19. I'm not sure if I understand your problem completely, but you can try predicting the next position of the player if he moved forward, and if that position is valid then let the player move. Something like: MovePlayerForward(); if(PlayerIsOffMap()) ReversePlayer(); // Putting him back where he was.
  20. I have decided that it is time for me to get a laptop, but I have a major problem. I can buy anything up to $2500, and I need it to have relatively high end graphics capabilities (so I can use most of the new graphics goodies coming out) and C++ developer friendly. So far, no problem. The problem is that I am not allowed to order anything online, so I have to rely on local retail stores in Brampton. The main (reputable) ones are The Source, Best Buy, and Future Shop. All these stores focus more on mainstream laptops (around $1000 with Intel GMA graphics) than on high end, gaming laptops. Also, even the decent laptops in these stores are for an unreasonably high price. For about $2500, I could order a Dell XPS which is potentially the best gaming laptop in the market. For the same price, I can get a bloated, crappy mainstream laptop in the retail stores mentioned above. Clearly, these stores are ripping me off. But I have no choice. Looking at the above factors, here is my current choice. I can't find any reviews for this laptop, since DV9330 barely turns up results on google, and am quite concerned with the relatively small 2MB L2 Cache. Should I be concerned about this, and would you guys say that this is a good deal in general? If not, any suggestions? P.S. The only gaming laptop I found was in The Source, the Asus G1. Not surprisingly, it is out of stock in every store in Brampton, and every store in nearby Toronto.
  21. AcePilot

    People quoting 300

    I guarantee that eventually in this thread, there will be a picture of a kitten with the head of Leonidas photoshopped on it...
  22. Hardware-accelerated realtime raytracing support on all new graphics cards would completely end the photorealistic graphics race. Someone needs to do it, its been in the prototype stage for way too long.
  23. Quote: Original post by alnite All of a sudden, this threads makes so much sense now! Quote: Original post by super_dead_nYit im getting so fed up, i feel like tearing out my eyeballs. i want some help. and ive tried time after time, to start a game orogramjing (sounds like mix between orgasming and programming) club at school, but no one listens to me. im getting so fed up, i want some help before i cry and scream some more. Fortunately, I can help you.
  24. I'm not sure if this will work, but try it anyways. void check_clear_row() { int row; // Scan through all the rows for(row = 0; row < SCREENH - 1; row++) { int i; BOOL isFull = TRUE; // Does this row need to be cleared? for(i = 0; i < 8; i++) { if(arr_tetris_screen[row] == NO_TILE) isFull = FALSE; } // Clear row if(isFull) { int currow; // Scan through all rows above this one, starting from this one. for(currow = row; currow > 0; currow--) { // Replace this row by the one right above it for(i = 0; i < 8; i++) { arr_tetris_screen[currow] = arr_tetris_screen[currow - 1]; } } } } translate(); }
  25. AcePilot

    How to load/draw levels

    There are many ways to go about this, and nearly every game uses a different method for storing and drawing levels. Assuming your game is 3D, you can come up with a file format that basically tells the computer how to draw your level. Something like this: mylevel.txt LevelName: "MyLevel" // Name of the level Texture: "mytex.bmp" // Name of the current texture Cube: 5, 3, 2, 10 // x, y, z, sidelength Sphere: 2, 2, 2, 5 // x, y, z, radius Mesh: "mymesh.x", 3, 5, 6 // Name of mesh file, x, y, z All your program has to do now is go through the level file and do what it says. So when it reaches the line "Cube: ...", it calls the DrawCube function with the supplied data, and if there is a collision detection system it passes this information to that system so that it becomes "aware" of the cube. This is an extremely simple example, your game will probably require a more sophisticated level format but the general idea remains the same.
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net 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!