All Activity

This stream auto-updates     

  1. Past hour
  2. A good way to avoid extermination in RTS?

    Most competetive RTSes end in "gg" and one team surrendering rather than playing until every single building is dead. That's the gaming equivalent of this. Whether this happens for an entire match (ala StarCraft) or if there is a higher level 'campaign' or 'war' layer wrapped on top of it doesn't matter.
  3. A good way to avoid extermination in RTS?

    I see a contradiction here. It seems you want to "win" the battle once the enemy has lost 5-10% of the troops, but yet they keep coming back, so you have to fight 10-20 battles to exterminate which one is it. Do you want the win to happen at 5-10%, or do you want to have to exterminate them? In the real world(theoretically), once a good number of troops are lost, the leaders make peace in order to not lose more(although we can leave out the whole guerilla war stuff for this topic). That means that one side won the war. So you don't have to do those other 10-20 battles to exterminate them. Maybe I'm missing something here, but if you are creating the game yourself, then you should be able to make it however you want. If you don't want all those battles, then consider it a victory sooner. If you want 100% extermination sooner, allow more troops into the battle.
  4. Rigging and Animating

    I don't use 3dsmax so I'm not sure how to bake constraints. In Blender, it is generally automatic. You set things up and make keyframes, and the constraints help you make the animations. The constraints are just there as you are making keyframes and moving bones around. It may work the same way in 3dsmax. FYI, for your first animation, you may want something simpler. I'm thinking something without pistons. Even a humanoid could be simpler because humanoids are generally only going to require bone rotations(like the human body) to make animations, so you could learn and practice the basics. Then, once you know more, you can get more into using constraints and things like that.
  5. Today
  6. Cant find how to do this asm code in c++...

    It's a scratch function that should do the assembly but in c++, one way through assignment other through memcpy, and such that the value of r gets changed to f each time. Or I Think that's what's going on!
  7. Cant find how to do this asm code in c++...

    What is this function trying to accomplish, exactly? edit: Never mind, read the comment above it.
  8. Yesterday
  9. Hi all, I want to obtain the mouse movement win WINAPI. Basically if the cursor is on the left side of the screen and I move the mouse left, I want to sill get a -x value. I know that this was possible with DirectInput, but I cannot find a WinAPI equivalent. Is there any?
  10. You can't light a detailed model of a billboard, so you're not going to get "the benefit of all modern computer graphics advancements". Maybe you could fake it with some sort of normal map texture? You also aren't taking into account all the different facings that need to be rendered out, and animated. Which is why most sprites in Doom tend to have so few frames of animation, because it needs to be done per facing. IE Monster walking towards the player, monster walking away from the player, monster walking NE, SE, S, SW, etc -- except 8 cardinal directions is way too few, need at least 16 if not 32 to make look not awful as it turns. The other issue is that highly detailed textures tend to look bad at a distance, that could be mitigated with design choices and maybe custom Mipmaps, not sure. As long as you're okay with it not looking photo realistic, and making a stylistic choice, I think it could be fine. You could try mocking it up in something like Unity or Unreal, for unity it would be a matter of making a plane that always faces the player and sticking a large texture on it.
  11. __declspec(selectany)

    Take a look at this for a quick refresher on linkage in C++. It's a good reference that covers all the relevant details, including how the compiler determines default linkage in the absence of a storage class specifier and the difference between a declaration versus a definition for both functions and variables. Perhaps you wouldn't, but there are a handful of constructs in C++ that produce multiple definitions as a matter of course, and they need special mechanisms (such as COMDAT) to support them properly. See vague linking for some additional insight and information (I also found Where's The Template? to be a rather interesting read on the related template instantiation problem). One thing it does is allow read-only global data items to participate in COMDAT folding and elimination. So if you had two (or more) read-only global variables with the same value: __declspec(selectany) extern const int x = 5; __declspec(selectany) extern const int y = 5; __declspec(selectany) extern const int z = 5; And you used the /OPT:ICF option, those variables would be collapsed into one in the final EXE/DLL, saving space. The /OPT:REF option would also allow the linker to eliminate unreferenced global variables completely, although be careful when doing this on objects since the initialization code will be removed as well! I suppose a secondary "benefit" is being able to define variables in header files, since the linker will just pick one instead of complaining, but I wouldn't use it for that reason alone.
  12. Why can't it be? What are you basing that on? It sounds like you're just repeating things that you've heard rather than basing this on development experience? It's currently lagging because they don't have a dedicated server, so you're relying on other players on vastly different connections to share game-state instead of having a single reliable connection to a data centre. If 100 players all simultaneously fire a 600RPM rifle at a target that's 3km away, then after three seconds there will be 3000 projectiles in the air. If the server ticks at 20Hz it needs a ray-tracer capable of 60K rays/s, which isn't much - it would only consume a tiny fraction of the server's CPU budget. If every bullet needs to be seen by every client (e.g. To draw tracers) then this would cause a burst of about 72kbit/s in bandwidth, which is fine for anyone on DSL, and a 7mbit/s burst on the server, which is fine for a machine in a gigabit data centre. None of this impacts latency because that's not how that works... And if not every bullet has visible tracers then these numbers go down drastically. [edit] I quickly googled and apparently PUBG does already run on dedicated servers in data centres? Maybe they still do client side hit detection for some reason though...
  13. A good way to avoid extermination in RTS?

    That uh, isn't true at all. Especially that last bit, "That army that used to fight you is now your army". It's more like, that army that used to fight you in official battles will now fight a long, grueling guerrilla war against you. It takes a long time to unify people, and standing armies have to remain behind to put down rebellions, etc. Look at the Iraq War and occupation thereof. Or Napoleon's invasion of Egypt.
  14. How to Detect if I have touched the correct alphabet

    You can place the code in properly formatted blocks instead of spamming the post by using the <> (code) option.
  15. Cant find how to do this asm code in c++...

    bool SetProcAddress(void* p) { void *r = p; // <--- Used for debugging (if *r change to the value of f in the watch, it mean it work) ULONG func=0; void *f = &func;// std::cout << " f = &func = " << (ULONG)f; /* #ifdef USE_ASM // This work... _asm { push eax push ebx mov eax, f mov ebx, p mov [ebx], eax // <--- put eax at the address pointed by ebx pop ebx pop eax } #endif */ #ifdef USE_INTEGERS ULONG* r1 = (ULONG*)r; ULONG address = (ULONG)f; void* p1 = p; *(ULONG*)p1 = address; //cast on left std::cout << "; " << *r1 << ", " << address << std::endl; #endif #ifdef USE_MEMCPY // this give save as above ULONG* r2 = (ULONG*)r; void* dest = p; void* source = f; memcpy( (void*)(*(ULONG*)dest), source, sizeof(dest) ); #endif std::cout << "*r2= " << *r2 << ", " << (ULONG)source << std::endl; return p1 == (void*)r1 && dest == (void*)r2; } So if this is correct, it turns out you need to do a lot of casting mayhem.
  16. Football Dash now on iOS (1 million downloads)

    Hey Brian, Great looking game here, congratulations on getting over 1 million downloads! Did you make this game in unity? or another game engine? Was it just you making this game or did you have a team, if it was just you, very nice job on the game! That's very impressive! - Anthony
  17. 3D Bouding Box Position problem

  18. Marching cubes

    I have had difficulties recently with the Marching Cubes algorithm, mainly because the principal source of information on the subject was kinda vague and incomplete to me. I need a lot of precision to understand something complicated Anyhow, after a lot of struggles, I have been able to code in Java a less hardcoded program than the given source because who doesn't like the cuteness of Java compared to the mean looking C++? Oh and by hardcoding, I mean something like this : cubeindex = 0; if (grid.val[0] < isolevel) cubeindex |= 1; if (grid.val[1] < isolevel) cubeindex |= 2; if (grid.val[2] < isolevel) cubeindex |= 4; if (grid.val[3] < isolevel) cubeindex |= 8; if (grid.val[4] < isolevel) cubeindex |= 16; if (grid.val[5] < isolevel) cubeindex |= 32; if (grid.val[6] < isolevel) cubeindex |= 64; if (grid.val[7] < isolevel) cubeindex |= 128; By no mean I am saying that my code is better or more performant. It's actually ugly. However, I absolutely loathe hardcoding. Here's the result with a scalar field generated using the coherent noise library joise :
  19. Recently I've been tackling with more organic low poly terrains. The default way of creating indices for a 3D geometry is the following (credits) : A way to create simple differences that makes the geometry slightly more complicated and thus more organic is to vertically swap the indices of each adjacent quad. In other words, each adjacent quad to a centered quad is its vertical mirror. Finally, by not sharing the vertices and hence by creating two triangles per quad, this is the result with a coherent noise generator (joise) : It is called flat shading.
  20. How to Detect if I have touched the correct alphabet

    @Scouting Ninja @Mike2343 I have progressed a bit with the project - I have randomly generated spheres having different alphabets and predefined words. Presently, I cannot compare the alphabet in the sphere with the alphabets of the word. Let me show you the code For randomly generating different alphabets - using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class GenerateRandom : MonoBehaviour { private Text[] Circle; // Use this for initialization void Start () { Circle = GameObject.FindGameObjectWithTag ("Text").GetComponentsInChildren<Text> (); char[] S = "qwertyuiopasdfghjklzxcvbnm".ToCharArray (); for (int i = 0; i < 3; i++) { Circle .text = S [Random.Range (0, 25)].ToString (); } } // Update is called once per frame void Update () { } } For Randomly generating a word - using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class RandomWord : MonoBehaviour { string[] Words = { "great", "stage", "peak", "street", "please" }; private Text texter; // Use this for initialization void Start () { texter = GameObject.FindGameObjectWithTag ("Sphere").GetComponent<Text>(); texter.text = Words[Random.Range (0, 4)].ToString(); } // Update is called once per frame void Update () { } } For collision detection and checking the correct alphabet - using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class Destroy : MonoBehaviour { private char[] Check; private string Me,You; // Use this for initialization void Start () { Me = GameObject.FindGameObjectWithTag ("Sphere").GetComponent<Text> ().ToString (); } // Update is called once per frame void Update () { } void OnCollisionEnter2D(Collision2D other) { int Length = Me.Length; Check = Me.ToCharArray (); Debug.Log ("Collision"); if(GameObject.FindWithTag ("Background")) { You = other.gameObject.GetComponent<Text> ().ToString (); if(You != null) { for(int i=0 ; i<Length; i++) { if (You == Check .ToString ()) Debug.Log ("Matched"); } } } Destroy (other.gameObject); } } Now I am getting the issue in the picture I have shared. When I double click the error, it redirects me to - You = other.gameObject.GetComponent<Text> ().ToString (); Looking forward to your help Thanks

    Hello, i'd like to introduce a new webgame called Galactic ERA to all of you. Game link This game is a browser based (but we do have APK for those who like to play on mobile.) Online space strategy game. It supports multi language, you can switch at bottom in login screen. This game is free, doesn't like some "free to play" and then give you many in-game buying. This game is like warframe or EVE online, All the items you can buy by cash is obtainable by in-game currency. And payed player doesn't have significant advantage than normal players. (well ,if you like to support the developer, maybe you can buy a monthly card) The background is space age and people start to expand from the Earth. All players starts from planet 1-1 (where is the spawn of all players for now, and have best facilities in the game) with a frigate hull and some basic weapons/defenses. By defeating the enemy in missions you can gain experience and UCP (currency in game), You can see i'm level 22 (at right bottom of my portrait.) The level determines what you can buy from the market (mostly, produce permissions for equipment) and skills unlocked (the skill system is like EVE online, it doesn't use skill point by level but you spend time on skills) Here is the planet view of the game. The game have ship design system. You can arrange weapons and equipment in your ship, and the design will reflect in battle. (e.g. if you put all armor in front, then your ship will be fragile when enemy hit you from side.) The system map of this game, You can conquer the planet and develop it. Every planet has it's own mining values, Some are rich and easy to harvest, and some are poor and harvest slowly. This game has a large system, but it also have a full galaxy for you to explore ! The clan first discover the new system can name it. As the game is developed by Chinese developers, so most the player is Chinese for now. And last but not least, the game has a good view of combat, You can monitor how your ship crash the enemy piece by piece, blow their shield, pierce their armor and explode their energy core. This game is still in Beta, currently all saved progress will be deleted on December 1. And then the game officially start running and keep the progress. Game link
  22. Open Source Direct3D 12 Game Engine?

    For my new "engine" I've decided to create a split between the system and what a traditional engine supplies. By this I mean I have a layer of libs called OSL which contains libs for: maths(vectors, magic etc) graphics(render, render states , render.cpp (dx11, dx12, to etc.)) System (memory, time, thread, config string etc.) So on... This is essentially a small media layer a bit like SDL but more like sfml or xna, from this I can then create games or most importantly create the OSL_Engine which implements scene manager, entity component systems, AI, physics etc. But doesn't have to know about the low level stuff as that's handled separately. The engine can then be used to make a DLL for an editor etc. Be interested in hearing about your approach.
  23. Feels a bit "confused" on my game development study

    That is what it feels like when you start. You read how to do X and how to do Y, like a parrot talking by just repeating words. It takes a while but you do learn from every attempt. It takes a lot of practice but you get better each time. There is no school that can teach you all about game development, you would be stuck in the school for your whole life. You did the theory and it's now time for the practical, use what you have learned and make your game.
  24. From the Forum – Issue #169

    Welcome to this week’s From the Forum. In this post, we highlight a few Corona Community Forums posts that cover important topics. Migrating Enterprise Corona has been offering our native builds as part of the core for a while now. There has been considerable modernization of the App template that projects are based upon. Several Enterprise developers are wanting to move forward and this thread covers various ways to move from the legacy Enterprise template to the modern Native template. Pushing objects Trying to add linear impulse to objects should make them move straight, but you can also get your objects to move oddly too. This thread helps “straighten out” that movement. Looping or events? The original poster wanted to know the best way to move objects in a back-and-forth manner. Corona offers several ways to do this and our great development community stepped up in this thread to offer some suggestions. Do you have a particular forum thread that was helpful for you? Let us know about it! Email, put FTF: and the forum title in the subject, and include the URL in the email. We will consider adding it to an upcoming edition of From the Forum. View the full article
  25. I've just tested simulating steam as well (as described by Kelager): Steam inside a sphere What do you guys think is going on (e.g., the problem probably is with the pressure force, or viscosity, or fiding the neightbors, or with collision response, etc). I can post the Fluid class if you guys need it. Thanks!
  26. Material for game developing

    Wouldn't you rather focus on one way of doing things when just starting out? I mean if you don't mind then whatever but focusing on one language to begin with is a good idea. The amount of tutorials and books and material for C# outnumbers what's available for Rust as well. Good luck either way.
  27. What is your Game of the Year for 2017 and why?

    Thats a lot haha. A majority of what you say is indeed tough love. That's valid.To me its nitpicky over lots of little design choices the developers probably didn't catch as they built it. You do have good points. However they did work on the game for six years, trying stuff out and writing several stories. Twenty for the main story, in fact. That was stated in an interview with the lead writer on YouTube. Perhaps they also used this first game to experiment with their designs, leaving a sequel for improvements. Thats normally how stuff works. Lots of what you mention can be ironed out and refined. You bring a detailed perspective. Thanks!. I have less to describe in shortcomings in my review I posted a couple weeks ago, over in the blog forum.
  28. I have studied game development in university for 3 years. I still feel very confused about how to develop a game. Yes I do have made some project and get high score in class. But it is far from a game we may see and play every day. So i feel very diffident about what i'm going to do in future. I'm not sure how far i am from an "average" game developer. I feel i learned something so i have more knowledge than those who not studied, but there a much more thing i have no idea about. For example, I do know use some graphic engine like OpenGL, but i'm like an ancient people get a modern machine by chance and studied it for years to know how to open the switch. Is that normal to all others who study game development? Feels what we learned in university is miles away from what we feels like?
  1. Load more activity