Jump to content
  • Advertisement


Popular Content

Showing content with the highest reputation on 02/19/19 in all areas

  1. 2 points
    And be aware that a lot of assets marked as 'personal use' are stolen assets, that the uploader has no rights to distribute. (The implication being that if you are just using them personally and not distributing, the original owners won't find out)
  2. 2 points
    Hi Hashbrown. Regarding FPSs: I’m the one who started the previous thread linked in Hodgman’s post. Since that thread, I’ve quietly done steady work on the game. It's not a FPS, but the mechanics and networking code are similar. We did a small WebSocket multiplayer test last week and it went really well. That was five players in Jordan connecting to a VPS in France. You can get an idea of just how “fast paced” the game is here. The server is off at the moment, but you can still see how responsive the movement is, the use of inertia, projectile speed, etc. - it's less twitched-based than some shooters. As mentioned in the thread, I’m round-robining over five WebSocket connections. It’s working well so far, but I plucked that number right out of a hat - I haven't tested other configurations to make any kind of comparison, and I haven't tested with a large number of players. (If you want to observe the networking in action, PM me and I'll figure out a time to have the server on.) In light of all that, my preliminary observation is that WebSockets could work OK for a FPS. But I think the networking code needs to be extra good (naturally), and there are definitely some allowances I have made because of the less-than-ideal TCP/browser environment. For example, my clients have more authority over their position than is typical in a multiplayer shooter. This mitigates the effect of interruptions in the flow of updates from the client to the server but makes it harder to prevent cheating (a particularly big problem because users can use the browser itself to easily access and change some parts of the game's code). You should also have a look at multiplayer shooters (2D or 3D) among the ".io" games. That should give you a good idea of what's already been done. In my opinion, most have a sluggish feel. Most don't seem to do any kind of client prediction, but I suspect that has more to do with the way these games are programmed than with limitations imposed by the WebSocket platform itself. Regarding RTSs and RPGs, these seem like ideal applications for WebSockets.
  3. 1 point
    Yes, that is the ideal situation but it's not currently supported. There are some issue requests open for it, so hopefully it gets implemented eventually. My latest CPU numbers were just under 50% all-in, including the rest of the physics, rendering, etc. I'm not sure what I'm at for just my code. In that scene, 2 of the 3 boats were unoptimized, there are probably around 2000 potentially-buoyant faces in total, so a simpler hull should make a significant difference. I'm releasing what I have this week, and one of my goals for a future version will be to offer some options to trade accuracy for speed. I'll be sure to give it a go on mobile to see how things hold up. As you noted, this would prevent the inside of the boat from rendering. You need to sandwich the depth rendering of the closed hull between the rendering of the boat and the water. If you do find a better workaround, I'd love to know!
  4. 1 point
    In a perfect world, yeah, all of the above. But that's not realistic. The best answer is perhaps "the immediate community of a player". You help those around you, and it grows from there, with some of those you help teaming up with you to help others. E.g. you help a handful of kids with some learning through a learning (and testing) app, you help a homeless person you run into daily find a good place at a homeless shelter or even help him get back on his feet if possible. Small scale things, local. Or you may help someone somewhere help others, perhaps using some experience you have (like advising someone on how to help that homeless person find a good shelter and maybe get back on his feet). It's not a sword, but a thousand papercuts, if that phrase makes any sense here?
  5. 1 point
    As with Zakwayda, I have tried very hard to understand what you were asking, but it has taken you a long time to even begin to pin down what you are trying to do, either through language difficulties or perhaps you didn't know what you wanted at the outset. It seems at this point you are trying to move a ball over a terrain. Is the ball rolling? Would a sphere be a better word? I'm getting the impression it cannot bounce. Is it moving only in the direction you provide, or can it roll sideways? We don't know, as you have been unable to ask the question precisely. What does the ball represent? Is it a ball, is it a player? We don't know. If you want to get more answers I strongly would suggest you start a new thread, and attempt to ask the question in a concise and precise fashion, perhaps get someone to help you who is more adept at the English language. There are plenty of folks here that are quite expert at physics (e.g. Dirk Gregorius, Randy Gaul etc), and I suspect part of the reason you haven't received more answers is that they would have to first spend ages try to decipher what you are trying to ask. Overall from what *I am guessing* you are looking for: The earlier suggestions I gave were all approximations. If you want to have a more accurate simulation I strongly suspect the answer you are looking for is: Use a physics engine Either a third party physics engine (preferably), or write one (or at least a subset). You expressed a wish for a 'simple' answer. Unfortunately some problems in games don't have a simple answer. This may not be a minor undertaking, as Zakwayda says many of the techniques are vulnerable to numerical error, and there are often special cases to debug and deal with. I would strongly advise if you really want to do this without a third party physics engine that you familiarize yourself with how they work (multiple bounces or slides per iteration), write your own at least for simple cases, and then you can apply the principles to come up with an approximate solution for this problem. You may be able to take advantage of some specifics of your case to make a more robust solution than a general case. For instance with a sphere, often you can treat the sphere path as a ray and 'push' the planes of collidees outwards to take account for the radius.
  6. 1 point
    You need to type commands in the console terminal (you need to run the console terminal as administrator): pip install GLFW pip install PyOpenGL pip install Pyrr pip install NumPy Pyrr - for trigonometry and linear algebra NumPy - for special arrays for OpenGL functions You will see how to use these libraries in video tutorial below. Now you are ready to create simple games in Python and OpenGL. See this video tutorial about basics of OpenGL. You can start from the second lesson: Modern OpenGL programming in Python - part 02 - creating a GLFW window After studying of this tutorial you can rewrite a prototype of the Snake 2D Tutorial: Python Snake Game from deprecated/legacy OpenGL 1 to modern OpenGL 3 and make it 3D with textures and lighting. And you will be able to load 3D models from Blender because the video tutorial above covers loading 3D models from Blender. How to create an empty window using GLFW: Copy the file below ("main.py") Place glfw3.dll (glfw3.dll.zip) with "main.py" Run the application. For this run the command in the console terminal: python main.py main.py import glfw def main(): # Initialize glfw if not glfw.init(): return window = glfw.create_window(800, 600, "My OpenGL Window", None, None) if not window: glfw.terminate() return glfw.make_context_current(window) while not glfw.window_should_close(window): glfw.poll_events() glfw.swap_buffers(window) glfw.terminate() if __name__ == "__main__": main()
  7. 1 point
    Hello dears! It's been more than a month since the last diary. Frankly, it was a hard month for me in terms of development. Most of the time was devoted to the construction of the structure of society, the interaction of the population, the transition from one stratum to another. It took a lot of time to build economic ties. At one point, I decided to throw some scheme of our project, which allowed a little systematize all my thoughts and see the degree of implementation of certain tasks. Who is interested to assess the scale, you can see the resulting scheme: https://mm.tt/1209438933?t=mBE5c38pFT In between work on the gameplay part of the thing with the mountains, and returned them again to the ice caps: Alexey made new optimized palm trees-270-350 triangles on one subtile Great result with such a landfill! I also managed to experiment with the user interface and made this sketch: And more or less brought him to mind: I prefer this interface concept. Before the interface was very heavy and it looked as if looking into the tube. But now clearly lacks any curls Then I experimented with transparent objects, we had an idea to implement such fields initially: But, in the end, we decided to focus on such an option: In a long box I had the task of building walls around our settlements. Alexey made models, already as half a year ago, but his hands did not reach them. I had to dust them off.: The problem was not trivial, it was necessary to carry out a lot of calculations to determine the need for a wall with an entrance, here is an example of such a case: And here is masterpiece deciduous trees on 800 triangles on subtil: Then I broke everything.: There came a ten-day period of optimization and rethinking of everything that was done on the render. And all this is due to the fact that I came up with one idea, how else to optimize our render. Unfortunately, I was not able to implement all my ideas, so to speak, theoretical calculations went against the practical results. But the result was still impressive. The first thing I want to mention — we now have 16 subtiles on the tile, and was 9. Before mesh subflow was 3x3, 4x4 now. 484 tops against 1089 now. The number of vertices per tile has increased 2.25 times, and the performance has remained at the same level and the map generation is now faster, as the most time-consuming process of normals calculation is now faster. This happened due to the fact that I removed from the calculations all the numbers with a period after the decimal point, such as 1\3 and 2\3. Now all calculations on both CPU side so GPU are faster. This is especially noticeable on large and huge worlds: The increase in the number of vertices and subflow allowed to implement more realistic mountains: Now our render takes out 32 million polygons!!! True to my GTX660 IS only 10FPS Alteration of the whole world on the structure of 4x4 sub-tails resulted in alteration of generation of mountains, hills, rivers, scaling of all models. Which together took those 10 days. - Also, the following points have been implemented about which I would like to briefly tell: - Normalmaps for the whole of terrane. - An error with the calculation of normalmap. - Corrected an interface error on the containers voznikayuschaya when the MouseEntered MouseExited events. - Go to / from full screen mode by pressing F11. A lot of time I took one bug: 5 hours I killed on his the search Thank you for your attention!
  8. 1 point
    Are you talking about essentially real world tasks, that the game binds together the 'players' and exchanges information to help them coordinate to achieve these tasks? It sounds a bit like how I'd imagine the freemasons to work. Most of the time people are doing things for individual gain rather than working together for the common good of a community. A game (or website) that puts people together to achieve useful goals is a good thing to aim for. Although I'm a capitalist, I think it would be nice if 5 days a week people worked for themselves, but every other weekend they might get together to do some community projects. Or the unemployed, who are in some counties paid to sit on their backsides. Of course how you quantify something as 'good' is up for debate. If you want to know how to manage an area you should pay attention to Ecology. Especially the concept of the carrying capacity. Strictly speaking, environmentally wise, the best thing a population can do, is to kill all the humans, or at least not have any children. That way the environment can return to nature, without pollution, and plants and animals can enjoy the world. Of course, we do not live in cut off communities. If some region gets rid of the population, and has a rich environment, other humans will invade the area and takeover. Personally I would see improving the world for humans and animals and plants to be more of forming a better balance, with a far lower human population, and less reliance on fossil fuels and polluting processes. Good luck persuading most of the world's population that having 10 children is not their 'god given right', but I guess that's why we have wars and plagues. Other positive things could include things like more environmentally friendly transport solutions, such as bicycle superhighway networks away from roads (perhaps with rain / wind shields), or cheap well designed low friction public transport such as monorail, or canals for slow bulk freight. Also highly insulated houses in cold areas to prevent senseless use of energy on heating. I often think that the trouble in 1st world countries is that we have the money to do good things, but there are too many regulations preventing people from undertaking projects (you need planning permission, building regs etc etc). You are more likely to be able to build innovative community improvement projects in third world countries, where either the regulations don't exist, or you can pay off officials.
  9. 1 point
    Hello there! Welcome to this installment of your favourite Weekly Update blog! I'm gonna say this outright: there are two new mechanics and some freshen aesthetics too! So let's get right to it! Alt Fires First up, let's talk about that lonely right mouse button. Previously that button was used to trow crystals around, but due to the previous update, there's no more crystal trowing anymore. This made right click very lonely indeed. To remedy this I've decided to implement secondary actions to weapons. For melee weapons, it's a blocking mechanic while in range ones it's a zoom mechanic. Guarding In melee weapons, the secondary action is some kind of guard. It doubles your defence stat while pressing and holding the secondary action button. You can block any actual attacks, both melee and ranged too. But there's more! Parry Another possible thing is to parry an attack. To do this the player needs to let go of the secondary action button precisely as an enemy attack. Unlike guarding, this technique mirror back the attack to their opponent. This is extremely gratifying to pull it off, but all of this needs to be planned ahead, as you only get a couple of frames to parry an attack. Also, you cannot do a quick parry. If you quickly let go of the secondary action button you will instead get punished by not only not doing a parry but also have a long cooldown too. parry.mp4 Zoom Secondly, range weapons (such as bows and guns) also get a secondary action as some kind of zoom. While holding the secondary action button the player's view will zoom in, making it easier to aim. While zoomed in, the mouse sensitivity will be greatly reduced, helping along with the aiming. There are no statistical benefits with zooming whatsoever. It's just really useful when you're having bad aim. Like guarding, getting in and out of it will induce a longer cooldown, so don't screw around too much! The Jungle Secondly, there's also been some kind of aesthetic upgrades, especially to the first level. Basically, I've changed my prop algorithm to add support for level-specific ones. This effectively meant that different props will appear in different levels, making each level feel a little bit different from each other. Right now I'm focusing on the jungle one, so let's see what's up... Super Ferns First new prop is the super ferns. In rainforests (the main type of forest casually associated with jungles), there is a lot of types of perennial vegetation, especially ferns. So it was a no-brainer to include those in the game (especially for the first level). Luckily, I already fully modelled a leaf of those type of ferns. It was just a matter of merging several duplicates of that model and boom, got yourself a rainforest fern. take a look : Anthurium Sagittatum Another really striking rainforest plant that I've fallen in love with is the Anthurium sagittatum plant. As you can see their leaves got a really distinctive shape that I just got to include in the game. Here's what I got: The Liana is back Also, the liana is back from the dead! It previously used as a placeholder to test my room algorithm, but now it's back in full force! With the new shader and Ambient Occlusion, I've got to say that it looks a whole lot better than previously. And with all those new props the jungle level slowly starts to look a whole lot like a jungle: And I'm technically not done yet! Minor Updates The refactor continues! I was able to shed about 10 MB whit all that duplicated code removed. With all those duplicated codes removed, it's now a whole lot cleaner. I've even managed to remove some typos and duplication corruptions here and there too. Fixed a bug with the animation state machine not being properly set up, meaning that attacks and guarding can override each other. Fixed a bug with 3D catenary slopes (like lianas and bridge ropes) not ending correctly. Upgrade the double-sided shaders to have better lighting when the geometry's normals are facing away from the camera (i.e. when we're looking inside the mesh) Also added some two-sided shading to appropriate models too! Fixed some problems with the level mesh generator generating meshes where it shouldn't. Removed most lighting probes references to static assets (because, you know, procedural generation) Next Week So next week I'm going to continue with the level-specific props and whatnot while looking at bugs too. I'm still planning to have something by the end of the month, or maybe by mid-March if there's any holdup, but we'll see. Otherwise, it's the usual suspects. So that's pretty much it! See you next week!
  10. -1 points
    ello, could you help me to read data from XDB game files:It contains needed info (some codes are available via raw Notepad++ view).Also files are presented in couple (xdb with xdb.rp).Attached some files for example Thanks.
  • 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!