Advertisement Jump to content
  • Advertisement

DvDmanDT

Member
  • Content Count

    1158
  • Joined

  • Last visited

Community Reputation

1951 Excellent

About DvDmanDT

  • Rank
    Contributor

Personal Information

  • Role
    Programmer
  • Interests
    Design
    Production
    Programming
    QA

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. DvDmanDT

    Command And Conquer Open Source?

    I don't know anything about CnC, but there's an API for StarCraft that can be used to write AIs. There are wrappers for multiple languages etc. Fairly easy to work with IIRC, not sure about debugging etc though.
  2. Hi everyone, Is there a way to allow mods, adding assets and code, to a Windows/Linux/MacOS Unity based game? We've tried googling for a bit and haven't really had much success. We are developing an RTS game with a large focus on resource management and production chains. We feel like the game design and logic engine are very well suited for mods and extending the amount of buildings, goods, research technologies and units, but we've had some trouble figuring out how to support this. Is it possible at all to begin with? Are there licensing aspects to deal with as well?
  3. Well, the idea is basically to trade one huge pre-alpha against several more or less complete pieces. It can be about not losing motivation. If you make a small game, it's an achievement and you can pat yourself on the back and all that. You probably should set out to do that in the first place, but for many people that doesn't seem fun. They want to work on some huge dream project that they will realistically never be able to complete, at least without help. This way, you'll get something to show earlier on and perhaps be able to attract attention and/or funding. Hopefully, at least that's the idea i guess. Honestly, I'm looking at it mostly from a hobbyist perspective where time and motivation are my primary concerns. From the business perspective, the complete game would be worth more than the parts, but the risk of investment etc would be smaller as you'd have something to show even if you have to abandon the project haft way. With a classic milestone based approach, you can track progress and make incremental investments etc to reduce risk, but unless the project reaches the critical 1.0 stage, it's likely all investments would have been for nothing anyway. With an modular approach, perhaps you could sell at least some of the modules and make something from it. My idea is a bit fuzzy, but it's not really modules either. It's a bit of a mix. In my MMO and climbing example, perhaps the next "stage" would be to add a town with villagers and shops. This is a natural progression towards my full MMO. But what can the shops sell? Swords? Armors? What's the use for those in the climbing game? We once again end up in some incomplete state. Perhaps you can find gems or valuable bird eggs while climbing that you can sell, and perhaps you can buy new climbing equipment instead of swords. Perhaps the town organizes competition, and you can climb in ranks and help promote your town? Now we've expanded on the mini game in the general direction of the full MMO idea, while adding some extra elements that may or may not fit with the full MMO idea, just to make sure we are in a "complete" state.
  4. I don't know. Maybe. To me, it sounds like you are still talking about milestones and optional features. About releasing a 1.0 and expanding on that. Like iteration, where I think I might be more like recursion. Like designing and implementing a game, and then using that game as a mini game or component in a bigger game. The first game may need to add extra elements to make sense on its own, that may not be necessary or at all desirable in the complete game. For example, in the MMO. Let's say the world has lots of mountains that you need to climb to get around. You have some ideas for interesting game mechanics that would make this climbing fun, and it's an important and big part of the travelling aspects of the MMO. Now, you implement it and release a tech demo/alpha version. Your players say "this is cool and all, but what is the point? Where are the monsters? Where's the loot?". They've entered a very incomplete MMO world that just feels empty, despite the cool climbing mechanics. What if you instead designed the climbing experience as a game, and added some time keeping and/or scoring, etc. That way, you have something small to show off and perhaps build some hype around, and if you grow tired of your full project and/or run out of funds or whatever, you at least have something to show for all your hard work, and not just that "empty, incomplete world" that tends to be the effect of Early access games running out of funds or similar.
  5. I don't think I communicated my point well enough. Hmm. You should of course implement your game in steps, component after component in some way, and in a way so that you can incrementally test stuff and not have to wait until everything is done before you can even compile (been there, done that 😉). But that's not really what I was referring to. What you are describing here sound like some form of tech demo. That can be fun and cool and all, but I was more interested in making sure that it's a game on its own. So that the design document is basically "tiered" according to implementation phases, and that each tier/phase should be a complete game on its own. I'm sure many plans and design documents have some form of wishlist of features with some form of priority or similar. That's a related, but slightly different concept. This is a bit of a different mind set I guess. Does anything I say make sense here?
  6. So we've all encountered the countless people who have their idea of the perfect game they want to develop, while just starting out in development. We've all told someone to start with something smaller that they can actually complete and work their way up etc. We've all also seen that advice be completely ignored only for the person/team to dive head first into an impossible project, simply because that's their dream. Making another Tetris clone just isn't fun for them, they want to work on that next generation MMORPG with 2EVERYTHING!!!!!!!1111oneone". And honestly, I'm basically one of them. What about designing games in steps or rings that can be incrementally implemented? So that you can implement a small portion of your dream game, and it would still be a playable game on its own.. What are your thoughts on this? Does anyone have experience with this? If yes, was it a small project that grew or did you actually have a grand vision in the beginning?
  7. Problematic advice: So this wasn't really a game development advice per se, but my mom always used to tell me "do it right the first time around and you'll save time and effort" or something like that. This was actually more of a general advice to life itself, and at the time it probably applied primarily to cleaning my room or something, but I basically accepted it and lived by that advice for many many years, including when I started programming. As most of you will recognize, this can be an absolute disaster for productivity. Micro optimizations everywhere! Lets hand optimize that 100-iterations-per-frame-loop in assembly! Let's make sure this engine works equally well for a tetris clone as the next high-end MMO. Since then, I've shifted to a more "let's go with the simplest possible solution that will do the job for now" for almost everything, and then iterate and improve/optimize when needed. My productivity is orders of magnitude higher. You don't need "perfect", you need "good enough". Good advice: Don't be afraid to throw out and rewrite problematic portions of code. Don't stick with stuff that doesn't do the job just because you spent significant time on it.
  8. We are using self hosted SVN right now. We thought about Github just for tracking, but I haven't been overly impressed with it so far, based on experiences with other projects using it etc. I haven't tried Trello, will take a look. It looks very Kanban-ish? Does anyone have experience with JetBrains YouTrack? [Edit] Also, thanks everyone for your tips!
  9. Hi everyone, Me and some friends have been developing a game and associated tools for a couple of years now, on and off. Due to work and life in general, our time to work on it is limited and while we try to dedicate one evening per week, something often gets in the way, leaving us with multiple weeks in between sessions. We are also reaching a point where we are having an increasingly hard time to keep track of tasks, decisions and what not. We have a MediaWiki instance, but it's too cumbersome to use for stuff like task/issue tracking. Since it's self hosted, I also spend more time updating/maintaining the software than actually using it, which is a bit annoying. So my question is basically, what are some of the best options for tiny teams (<5, currently 2.5) with extremely low budget 2018? We are using JIRA/Confluence at work, and while it works, performance is awful, it's kind of overkill and not free. It's not completely out of the question at $20 per month, but that's money we could instead spend on assets or similar, so cheaper/free is preferable, especially considering our rather limited needs at this time.
  10. DvDmanDT

    C++ Common Runtime

    This is pretty much what I was referring to really. While I'm sure there are instances where these things make it easier to express high level behavior/logic, my impression is that most people are using this to ensure certain low level behavior (ie make a more efficient implementation, tailored to your particular needs at the time). To get back to the original question however.. Even if you can compile your code to some intermediate format (like LLVM apparently supports), you are only solving half the problem. You also need to ensure that certain features exist on the target platform, and that the way to interact with these stay the same. If you take something like .NET, a part of it is the JIT compiler, but do not underestimate the importance of the framework libraries that are defined for the platform. For a game, this could for example be OpenGL/DirectX, or for older games, some way to acquire a pointer to the frame buffer shown on the screen. And even if you get that pointer, will the image format remain the same? Will the resolutions etc? Those are the true problem with cross platform code imo, not cross-compiling/jit-compiling/translating the machine code.
  11. DvDmanDT

    C++ Common Runtime

    You're right. I worded my point incredibly bad. I wasn't really talking about the exact output in terms of instructions, but rather the exact output in terms of behavior. You can optimize your data structures to fit a particular architecture with respect to things like alignment and cache behaviors and what not. You obviously don't have to do that, and it may be difficult when writing code intended to be portable, but I'd argue that if you don't, then you are missing out on what I consider the biggest strength of C++ and might as well use some other language/tech that was designed with the use case in mind (completely ignoring existing code that is. It's obviously a lot more complicated and a lot more factors involved).
  12. DvDmanDT

    C++ Common Runtime

    In my opinion, the real strength of C and/or C++ is that they are low enough level to allow you maximum control over behavior and code generation. This for example allows you to do platform specific optimizations and use stuff like intrinsics to squeeze out the last drops of performance. If you are not going to do these things (which would effectively be pointless if you want a platform independent IL type thing) then I'm not sure why you wouldn't just use something that was designed with in mind instead of C++.
  13. DvDmanDT

    C vs. C++ vs. C# (Beginner)

    Oh no worries, I did not mean to lecture you or anything. I myself thought C was considered a "functional" language for several years because it only had functions and not stuff like classes or similar.
  14. DvDmanDT

    C vs. C++ vs. C# (Beginner)

    Functional is something else completely, that's Lisp, Haskell, F# and others. There are some very real advantages to this, but they require a very different thinking and the general community support, both in terms of libraries, documentation and general knowledge is much more limited. Many of the listed advantages are currently not actually implemented in real world as well, or don't work nearly as well in practice as they do in theory. I really do recommend studying this as secondary/later languages, because it really does have it's pros and all, but I would really recommend against it for starting out. They give you very good mindsets and thinking patterns, but are not necessarily the most practical languages to work with for real applications. C# will give you results much more quickly than C or C++, at least for most users. Some options, such as Python or Javascript might be even faster, but may have other disadvantages (IMO!). Finally, I'd like to point out that performance is not the most important metric, and that while option A might be faster than B, the difference is not necessarily big enough to matter for your actual application/game. Ie, Python might be slow, but it's still more than fast enough for most applications. In fact, some Python applications even beat C in performance for smaller test-bench type of applications. Still, productivity and having fun matters way more, so always go with whatever you are having the most fun with.
  15. DvDmanDT

    C vs. C++ vs. C# (Beginner)

    C as a language itself is pretty nice and easy, but it's rather impractical to use since it lacks so many features. As far as I can tell, it's mostly dead in game development, but is widely used in low level programming such as drivers and embedded software. C++ is mostly a superset of C, so you might as well go with that instead. Personally, I'd highly recommend C# though. C++ may have slightly higher potential in terms of performance, memory usage and so on, but C# is generally easier to work with and will likely let you get stuff done faster. Also, keep in mind that while C++ gives you a lot of potential, you will probably need significant knowledge, experience and invested time to actually harness that potential. Many newcomers are under the impression that using C++ over <insert language here> will magically make things faster and/or use less memory or whatever, which is not true at all. When it comes to languages that are useful development outside of games as well.. You have Java which is very big on mobile and big enterprisy stuff. Javascript seems to be very big for online services, both client and server side, mostly because it's so portable. C# is a pretty solid choice on mobile, server side web and application development as well. Python seemed like it was getting serious traction there for a while, but now I'm only hearing about it in entry level game development discussions. There's a lot of C and C++ lying around as well, especially existing systems. My recommendation out of them all is C# as it has a very nice balance of strictness, productivity features, tool support, documentation, performance and usages outside of game development.
  • 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!