What sort of language do you think was used to make Xcom Apocalypse?

A place to discuss the implementation and style of computer programs.

Moderators: phlip, Moderators General, Prelates

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Thu Dec 14, 2017 11:41 pm UTC

Just wondering if I wanted to make a game like that for myself?
https://en.wikipedia.org/wiki/X-COM:_Apocalypse

Not C probably?
Sample Gameplay of Xcom Apocalypse
Combat 27:15 - 27:35

User avatar
Thesh
Made to Fuck Dinosaurs
Posts: 5774
Joined: Tue Jan 12, 2010 1:55 am UTC
Location: Colorado

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Thesh » Fri Dec 15, 2017 12:07 am UTC

It was probably written in C++, but if you are looking for that level of graphics you can probably do it in Python as the performance won't be an issue on modern computers. The real difficulty you will find if you haven't programmed before is figuring out where to start.
The rage in their eyes, torches in their hands
And the power of the cross bringing fear to all the land
And darkness will come to us all.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Fri Dec 15, 2017 12:09 am UTC

Thesh wrote:It was probably written in C++, but if you are looking for that level of graphics you can probably do it in Python as the performance won't be an issue on modern computers. The real difficulty you will find if you haven't programmed before is figuring out where to start.


Well I've learned some stuff from an intro college course (C programming with loops, pointers, file I/O, and some other stuff). But which would give more customizability? C++ or Python?

I'd like to make stuff like a creation kit and such.

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Fri Dec 15, 2017 12:14 am UTC

(Without looking to see if the YouTube features something that particularly justifies your thoughts, rather than just showing what I already know of XCOM in general…) I don't know why you think it wouldn't be C. Of some flavour or other, even if not pure Kernighan & Ritchie.

Using a suitable library-calls (or do it from scratch, if you really want to) there's nothing stopping C from taking mouse and keyboard inputs and shoving output to screen (or a window on the screen, or some reductionist instructions that a GPU takes on the hassle of making full sprite-drawing flesh for you), speakers after juggling an arbitrary amount of internal states. Plus doing any dialogue to a networked adversary (or middle-man server) if you're engaging in multiplayer at the time.

Probably better in a core C-dialect than Python (though you could likely do it in that as well, inefficiently and perhaps ultimately more clunky) or Delphi(/Lazarus) or VB or Perl/Tk or whatever. But it's all the same in principle.


(Ha, similar opinions from Ninja.)

Edit: Gd - check out UFO:AI, perhaps, as the creators of that have already gone down the road you look like you want to go down.
Last edited by Soupspoon on Fri Dec 15, 2017 12:28 am UTC, edited 2 times in total.

User avatar
Thesh
Made to Fuck Dinosaurs
Posts: 5774
Joined: Tue Jan 12, 2010 1:55 am UTC
Location: Colorado

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Thesh » Fri Dec 15, 2017 12:18 am UTC

Well, they both have a massive collections of libraries available, so you shouldn't be too concerned about that, but Python would be easier to pick up and start coding with. I'd suggest trying to code something like the base construction interface, to introduce you to graphical/UI programming. Once you get it done in one language, you can always try it in another language.
The rage in their eyes, torches in their hands
And the power of the cross bringing fear to all the land
And darkness will come to us all.

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Fri Dec 15, 2017 12:31 am UTC

(Was an Edit2, but with a new reply, might be missed, so extracted to here…)

For 'customisability', I'd stick (notwithstanding Thesh's recomendation, which has its own merits) with C++ if you can handle it. Python abstracts a lot more which means it's 'easier' to get a moving sprite, etc, but you then have to do much more to add finesse to it, whereas in C++ you're likely already having to work with the fine detail from the off and so it doesn't look so much like a cut'n'shove Terry Gilliam animation when you want it to look 'more realistic' vkdeogame graphica from the off. But find the right pre-written Game Engine (made with your kind of end-vision in mind) and you might be able to avoid all that fuss so your own output is little more than some scripting. Not that I think you'd be happy with that. It's horses for courses, though. You need to find your own level, or at least a level that you're not too uncomfortable about using (not too hand-holdy/not too soul-breaking).

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Fri Dec 15, 2017 12:52 am UTC

Soupspoon wrote:(Was an Edit2, but with a new reply, might be missed, so extracted to here…)

For 'customisability', I'd stick (notwithstanding Thesh's recomendation, which has its own merits) with C++ if you can handle it. Python abstracts a lot more which means it's 'easier' to get a moving sprite, etc, but you then have to do much more to add finesse to it, whereas in C++ you're likely already having to work with the fine detail from the off and so it doesn't look so much like a cut'n'shove Terry Gilliam animation when you want it to look 'more realistic' vkdeogame graphica from the off. But find the right pre-written Game Engine (made with your kind of end-vision in mind) and you might be able to avoid all that fuss so your own output is little more than some scripting. Not that I think you'd be happy with that. It's horses for courses, though. You need to find your own level, or at least a level that you're not too uncomfortable about using (not too hand-holdy/not too soul-breaking).


Customisability is what I want most. I'm willing to take a long time it and make something I'll be able to enjoy (and maybe other people as well). Made this once a long time ago: Morrowind Matrix Doors Mod. I figure it will be soul crushing, but I'm not in a hurry.

I also learned C++ in the same level as what I learned C now but like 10+ years ago. Looks like I'll have to start going for it. Only problem that comes to mind now is that I am no artist.

User avatar
Thesh
Made to Fuck Dinosaurs
Posts: 5774
Joined: Tue Jan 12, 2010 1:55 am UTC
Location: Colorado

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Thesh » Fri Dec 15, 2017 12:54 am UTC

Can you describe what you mean by customizability?
The rage in their eyes, torches in their hands
And the power of the cross bringing fear to all the land
And darkness will come to us all.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Fri Dec 15, 2017 12:56 am UTC

Thesh wrote:Can you describe what you mean by customizability?


I don't want to be limited by what the code can't do that much (I know that's probably unreasonable). So I want as many options as possible even if it's harder to learn it. I want to make a creation kit, be able to make the interface do what I want, add new things into the game. To be fair, I don't know what I don't know, but I know that I want more options rather than fewer.

By the way, thanks to all so far for pointing me in the right direction.

I have grand imaginings for this game, but we'll see what happens.

Also, with regards to UFO: AI, not quite. I want something sort of a fusion between XCOM Apoc and The Avernum/Exile Series as well as some other things. Don't want to give away all my ideas though.

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Fri Dec 15, 2017 1:50 am UTC

gd1 wrote:Only problem that comes to mind now is that I am no artist.

The way I get around my lack of artistry is to put all my efforts towards developing a Procedural Generation method. e.g., instead of drawing key-frames of one (or, likely, several) of your on-screen character sprites, so that they smoothly animate (both in a single cyclic sequence, like walking, and also in transitions, such as stopping and kneeling) I dedicate myself towards getting a wire-frame 'skeleton' to animate and a way of padding that skeleton out to 'cloth' it (inclusive of skin bits). Then you can twerk differing bulk in the 'clothing' part (it'd be dufferent for a.muscley char to how you'd do one guilty of over-eating) and couple that with gait changes (lumbering, lighter in step… even simulate limping?) to effectively generate a rendering that one's artistic skills are incapable of (either real-time, during gameplay, or to pre-generate all those sprite key-frames, depicting all eight directions of facing and absolutely all movement/idle/transition sequences, for each and every possible character).

And Bob's your unspecified familial relation! It's fun to do, certainly. Though whether that depends upon whether you have the time to work on that (also, I externalise that work to something like Blender, to create static 'art' that works good enough to scale down, mostly).

The other option is to farm out the artwork to someone who can do that straight off the pixel-brush.

commodorejohn
Posts: 1042
Joined: Thu Dec 10, 2009 6:21 pm UTC
Location: Placerville, CA
Contact:

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby commodorejohn » Fri Dec 15, 2017 2:01 am UTC

gd1 wrote:I don't want to be limited by what the code can't do that much (I know that's probably unreasonable). So I want as many options as possible even if it's harder to learn it. I want to make a creation kit, be able to make the interface do what I want, add new things into the game. To be fair, I don't know what I don't know, but I know that I want more options rather than fewer.

Do bear in mind that if this is your goal, you're likely going to end up implementing a full-fledged scripting language or virtual-machine interpreter on top of all the other work you're setting up for yourself. Nothing wrong with that, of course, but I'd decide ahead of time just how much flexibility you really think you need, so you can plan appropriately. Alternatively, have you considered looking around for an existing game-creation system that can be adapted to suit the game you want to make? That would allow you to save time working on the engine and get right to the actual gameplay and content.
"'Legacy code' often differs from its suggested alternative by actually working and scaling."
- Bjarne Stroustrup
www.commodorejohn.com - in case you were wondering, which you probably weren't.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Fri Dec 15, 2017 2:14 am UTC

Soupspoon wrote:
gd1 wrote:Only problem that comes to mind now is that I am no artist.

The way I get around my lack of artistry is to put all my efforts towards developing a Procedural Generation method. e.g., instead of drawing key-frames of one (or, likely, several) of your on-screen character sprites, so that they smoothly animate (both in a single cyclic sequence, like walking, and also in transitions, such as stopping and kneeling) I dedicate myself towards getting a wire-frame 'skeleton' to animate and a way of padding that skeleton out to 'cloth' it (inclusive of skin bits). Then you can twerk differing bulk in the 'clothing' part (it'd be dufferent for a.muscley char to how you'd do one guilty of over-eating) and couple that with gait changes (lumbering, lighter in step… even simulate limping?) to effectively generate a rendering that one's artistic skills are incapable of (either real-time, during gameplay, or to pre-generate all those sprite key-frames, depicting all eight directions of facing and absolutely all movement/idle/transition sequences, for each and every possible character).

And Bob's your unspecified familial relation! It's fun to do, certainly. Though whether that depends upon whether you have the time to work on that (also, I externalise that work to something like Blender, to create static 'art' that works good enough to scale down, mostly).

The other option is to farm out the artwork to someone who can do that straight off the pixel-brush.


I'm going to have to learn quite a bit it seems. Imagine making music (and sound effects) too... :X

commodorejohn wrote:
gd1 wrote:I don't want to be limited by what the code can't do that much (I know that's probably unreasonable). So I want as many options as possible even if it's harder to learn it. I want to make a creation kit, be able to make the interface do what I want, add new things into the game. To be fair, I don't know what I don't know, but I know that I want more options rather than fewer.

Do bear in mind that if this is your goal, you're likely going to end up implementing a full-fledged scripting language or virtual-machine interpreter on top of all the other work you're setting up for yourself. Nothing wrong with that, of course, but I'd decide ahead of time just how much flexibility you really think you need, so you can plan appropriately. Alternatively, have you considered looking around for an existing game-creation system that can be adapted to suit the game you want to make? That would allow you to save time working on the engine and get right to the actual gameplay and content.


The temptation to have an existing engine is there, but I'm going to have to think carefully about what the limitations of them are.

I'm willing to take my time on this to make something fun. It'll definitely take a while, but I don't want something simple that is done quickly and then isn't much fun. I'm also going to have to save the posts on this thread so I know where to look for stuff if Net Neutrality going down really does kill the internet.

I've written out (typed up) a lot of my gameplay ideas/story/lore/mechanics and such. I'm just a procrastinator. Making this thread to find out where to start is one more check box ticked on the road to my goal.

Tub
Posts: 373
Joined: Wed Jul 27, 2011 3:13 pm UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Tub » Fri Dec 15, 2017 7:25 pm UTC

I think the most important knowledge you lack is an appreciation for how complex development actually is. XCom was developed by dozens of experienced developers over several years, and they weren't slacking. You won't live long enough to even match their work on your own.
I understand the desire to do everything on your own as a learning experience, I also understand being uncomfortable with other people's code or game engines unless you truly understand them. But if you intend to finish your project, you need to rely on others.

If you know exactly what you want and you have an unchanging requirements document that just needs implementing, then nothing would stop you from programming directly against common APIs for sound, graphics and input. If you want your game to be extensible with a dev kit and scripting language, then you'll want to use an existing game engine. Modern game engines have hundreds or thousands of person years behind them; they have great documentation and tutorials, and they have communities you can turn to for help. Use those resources.
It also means that other people may already be familiar with your game engine, making it easier for them to contribute to your project.

But even if you think that your own engine is the right way to go, you should still do a smaller project in an existing game engine first. Seeing how other engines solve common problems is a good learning experience. You can't expect to improve on them if you refuse to learn from them.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Sat Dec 16, 2017 6:34 am UTC

Tub wrote:I think the most important knowledge you lack is an appreciation for how complex development actually is. XCom was developed by dozens of experienced developers over several years, and they weren't slacking. You won't live long enough to even match their work on your own.
I understand the desire to do everything on your own as a learning experience, I also understand being uncomfortable with other people's code or game engines unless you truly understand them. But if you intend to finish your project, you need to rely on others.

If you know exactly what you want and you have an unchanging requirements document that just needs implementing, then nothing would stop you from programming directly against common APIs for sound, graphics and input. If you want your game to be extensible with a dev kit and scripting language, then you'll want to use an existing game engine. Modern game engines have hundreds or thousands of person years behind them; they have great documentation and tutorials, and they have communities you can turn to for help. Use those resources.
It also means that other people may already be familiar with your game engine, making it easier for them to contribute to your project.

But even if you think that your own engine is the right way to go, you should still do a smaller project in an existing game engine first. Seeing how other engines solve common problems is a good learning experience. You can't expect to improve on them if you refuse to learn from them.


I did not think about that and in retrospect I should have. I just thought that since its an older game (but it still checks out) that I could just take my time and code it over a few years at my own pace. However, given that it was developed by more than one person it makes sense that it wouldn't be that easy.

If I want to make a 3d game like Xcom Apoc (3d in that it has 3 dimensions of movement) and I want to have stats, weapons, magic, and to alter the inventory interface/various other interfaces (maybe have perk trees), is that mostly scripting or will I run into issues with limitations of an existing game engine? Which one would work best and/or how can I figure that out myself? Will I still be able to write code like loops (I for some reason like writing code in general)? I think I have a game maker on my flash drive, but I'm not sure if it's any good because I think it was free.

Tub
Posts: 373
Joined: Wed Jul 27, 2011 3:13 pm UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Tub » Sat Dec 16, 2017 11:05 am UTC

I think your fear of "limitations" is unfounded. Sure, there are some very specific game engines meant to support only a single genre, and they won't help you much.
But there are also game engines specifically designed to work for a variety of game types. They're versatile and extensible. And a lot of your work is still going to be coding rather than clicking.

Search for a few projects made with the engine of your choice, you should see wildly different results. If not, pick a different engine. I refuse to comment on (or advertise) specific proprietary solutions, but I know engines that could be a good fit for your goals and your abilities.

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Sat Dec 16, 2017 12:58 pm UTC

I am not happy with my own reply, that's been sitting here for six hours, being fiddled with occasionally, so I'm putting it in a spoiler to indicate that there's a whole lot of things not said that might have been and other tjings said that may not have been useful. And may include personal interpretations of some distinctions made. Caveat lector.

Spoiler:
gd1 wrote:I did not think about that and in retrospect I should have. I just thought that since its an older game (but it still checks out) that I could just take my time and code it over a few years at my own pace. However, given that it was developed by more than one person it makes sense that it wouldn't be that easy.
it might not be 'easy' even if you were emulating something developed by just one person. Expect work either way. ;)


If I want to make a 3d game like Xcom Apoc (3d in that it has 3 dimensions of movement) and I want to have stats, weapons, magic, and to alter the inventory interface/various other interfaces (maybe have perk trees), is that mostly scripting or will I run into issues with limitations of an existing game engine?
3d output like XCOM (or even just 2d+ with isometric) is probably something you can go to an engine to handle (using whatever graphical resources you scrape together), or use the plethora of cut'n'pastable code(/library calls) sitting on websites out there, and then try to work out how you weld them together.

The 3d environment, being modelled and rendered, is just pure data. And as you're lumping it in with stats/etc, I think that's what you mean. And you can work on that mostly independently of the aesthetics (after a token effort?). You can work on that with Excel, actually. Or pencil-and-paper. But if you can get Excel to do it, you know you aren't cheating with your own mind.


And compare something like Falcon'sVulture's Eye ('3d' isometric graphics) vs NetHack (2d graphical). The same back-end complexity. Or.MUDs, which are pure text (with significant natural language elements in their input/output) but arbitrarily complicated behind the scenes, in both coded and scripted elements.


Which one would work best and/or how can I figure that out myself? Will I still be able to write code like loops (I for some reason like writing code in general)?
If you aren't implementing loops ("do (this) until (no longer necessary)") you're obviously using someone else's loops ("check to see if (these elements of your own design) need doing, every turn until (aborted/quit/crashed)").

Code and scripting is (as far as you're concerned) basically equivalent until you hit a ceetain limit. Compiled vs Interpreted (vs "part-way compiled, semi-interpreted") affects speed. The actual capabilities of the various codes/scripts you could use (Draw a dialogue window over the game action? Animate a graphical sprite? Network handshake with Player 2's machine?) overlap significantly.

I think I have a game maker on my flash drive, but I'm not sure if it's any good because I think it was free.
At a rough guess, it's something that lets you place objects (images, geometric shapes, in-built 'widgets' on a 2d canvas, give them information about how they can move and react to keyboard/mouse in real-time and optional collision-detection with other objects, etc. With that you can make an XCOM interface. Might be useful to try. Or might be a waste of some of your effort if you try to perfect it and find a limitation, rather than just use as a proof of concept.

User avatar
Sizik
Posts: 1190
Joined: Wed Aug 27, 2008 3:48 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Sizik » Sat Dec 16, 2017 7:41 pm UTC

Something you might want to check out is Handmade Hero, an educational stream/video series about coding a complete game from scratch in C*, without using any libraries (including the C standard library!) except for the Windows API and OpenGL. The focus is more on how to write a game engine rather than how to design a game, so the game currently doesn't have much gameplay other than the player and enemies hopping around the world, but it's a great example of how you can produce complex behavior without having to rely on fancy language features and prewritten game engines to accomplish things. All of the code is written live on stream, and the presenter explains everything he's doing and why he's doing it. If you want to watch live, he streams on Twitch for about 3 hours (half hour unrecorded off-topic Q&A, 2 hours of coding, and half hour on-topic Q&A) on Saturday and Sunday mornings PST.

*Technically C++, but pretty much no C++ features are used other than function and operator overloading.
gmalivuk wrote:
King Author wrote:If space (rather, distance) is an illusion, it'd be possible for one meta-me to experience both body's sensory inputs.
Yes. And if wishes were horses, wishing wells would fill up very quickly with drowned horses.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Sat Dec 16, 2017 11:44 pm UTC

Sizik wrote:Something you might want to check out is Handmade Hero, an educational stream/video series about coding a complete game from scratch in C*, without using any libraries (including the C standard library!) except for the Windows API and OpenGL. The focus is more on how to write a game engine rather than how to design a game, so the game currently doesn't have much gameplay other than the player and enemies hopping around the world, but it's a great example of how you can produce complex behavior without having to rely on fancy language features and prewritten game engines to accomplish things. All of the code is written live on stream, and the presenter explains everything he's doing and why he's doing it. If you want to watch live, he streams on Twitch for about 3 hours (half hour unrecorded off-topic Q&A, 2 hours of coding, and half hour on-topic Q&A) on Saturday and Sunday mornings PST.

*Technically C++, but pretty much no C++ features are used other than function and operator overloading.


My internet has been bad lately so I'll have to wait till it improves, but I guess I could just let it load afterwards if they upload somewhere.

EDIT: Wow, it looks like he built it from the ground up. Now I feel a little bad about wanting to use a game engine (because of that little intro he had). I'll have to look more into what can and can't be done and see if I can make an engine do what I want it to do. From what I saw by just clicking on some of the videos I could see that a lot goes into it. I'm not sure how much of that it handled by the engine, but as said above "expect work either way". That's fine, no game so far has what I want yet so I'll have to build one that does (they stop short in effort imo). A little worried that if I make it myself I won't have fun playing it, but maybe not. Well at least now I know where to look thanks to the help you guys have given me.

Tub wrote:I think your fear of "limitations" is unfounded. Sure, there are some very specific game engines meant to support only a single genre, and they won't help you much.
But there are also game engines specifically designed to work for a variety of game types. They're versatile and extensible. And a lot of your work is still going to be coding rather than clicking.

Search for a few projects made with the engine of your choice, you should see wildly different results. If not, pick a different engine. I refuse to comment on (or advertise) specific proprietary solutions, but I know engines that could be a good fit for your goals and your abilities.


I was getting that feeling that it might be that way with limitations. I'll have to look for a similar game.

Soupspoon wrote:I am not happy with my own reply, that's been sitting here for six hours, being fiddled with occasionally, so I'm putting it in a spoiler to indicate that there's a whole lot of things not said that might have been and other tjings said that may not have been useful. And may include personal interpretations of some distinctions made. Caveat lector.

Spoiler:
gd1 wrote:I did not think about that and in retrospect I should have. I just thought that since its an older game (but it still checks out) that I could just take my time and code it over a few years at my own pace. However, given that it was developed by more than one person it makes sense that it wouldn't be that easy.
it might not be 'easy' even if you were emulating something developed by just one person. Expect work either way. ;)


If I want to make a 3d game like Xcom Apoc (3d in that it has 3 dimensions of movement) and I want to have stats, weapons, magic, and to alter the inventory interface/various other interfaces (maybe have perk trees), is that mostly scripting or will I run into issues with limitations of an existing game engine?
3d output like XCOM (or even just 2d+ with isometric) is probably something you can go to an engine to handle (using whatever graphical resources you scrape together), or use the plethora of cut'n'pastable code(/library calls) sitting on websites out there, and then try to work out how you weld them together.

The 3d environment, being modelled and rendered, is just pure data. And as you're lumping it in with stats/etc, I think that's what you mean. And you can work on that mostly independently of the aesthetics (after a token effort?). You can work on that with Excel, actually. Or pencil-and-paper. But if you can get Excel to do it, you know you aren't cheating with your own mind.


And compare something like Falcon'sVulture's Eye ('3d' isometric graphics) vs NetHack (2d graphical). The same back-end complexity. Or.MUDs, which are pure text (with significant natural language elements in their input/output) but arbitrarily complicated behind the scenes, in both coded and scripted elements.


Which one would work best and/or how can I figure that out myself? Will I still be able to write code like loops (I for some reason like writing code in general)?
If you aren't implementing loops ("do (this) until (no longer necessary)") you're obviously using someone else's loops ("check to see if (these elements of your own design) need doing, every turn until (aborted/quit/crashed)").

Code and scripting is (as far as you're concerned) basically equivalent until you hit a certain limit. Compiled vs Interpreted (vs "part-way compiled, semi-interpreted") affects speed. The actual capabilities of the various codes/scripts you could use (Draw a dialogue window over the game action? Animate a graphical sprite? Network handshake with Player 2's machine?) overlap significantly.

I think I have a game maker on my flash drive, but I'm not sure if it's any good because I think it was free.
At a rough guess, it's something that lets you place objects (images, geometric shapes, in-built 'widgets' on a 2d canvas, give them information about how they can move and react to keyboard/mouse in real-time and optional collision-detection with other objects, etc. With that you can make an XCOM interface. Might be useful to try. Or might be a waste of some of your effort if you try to perfect it and find a limitation, rather than just use as a proof of concept.


Going for 2d with movement in 3 directions. The game maker is called game maker studio 1.2 (still haven't looked at it yet though). Going to probably look at what some of the game engines can do. What I'm going to look for in particular in some ways is how much I can do with the various pop-up interfaces for a given game engine. Though I'm not going to rush this (procrastination for one part, but also I want to make something with all the stuff I wanted). The key for overcoming procrastination maybe for me is "no pressure".

Also, what I thought of with regards to procrastination (Just the first two paragraphs):
http://www.giantitp.com/forums/showsinglepost.php?p=22450738&postcount=4
Thanqol wrote:A lot of people have tried to copy the drawthread. A lot of people have fallen off the wagon.

I think that the longevity of my success is due entirely to a bloodcrazed oath that I have rigidly adhered to no matter the circumstances: Draw Every Day. No breaks, no vacations, no excuses, ever. If I've forgotten and don't realize until I'm lying in bed I've got to drag myself out of bed, find the notebook, sketch out some abstract shape and only then can I go to sleep. It defies words how important this rule is.

commodorejohn
Posts: 1042
Joined: Thu Dec 10, 2009 6:21 pm UTC
Location: Placerville, CA
Contact:

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby commodorejohn » Sun Dec 17, 2017 5:25 am UTC

All this reminds me that I really ought to get back to work on my own game-engine project...
"'Legacy code' often differs from its suggested alternative by actually working and scaling."
- Bjarne Stroustrup
www.commodorejohn.com - in case you were wondering, which you probably weren't.

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Sun Dec 17, 2017 5:47 am UTC

commodorejohn wrote:All this reminds me that I really ought to get back to work on my own game-engine project...


At least you've started. I'm still in the "coming up with ideas and putting them into an ever expanding notepad file". That's going to be my minimum progress benchmark, come up with an idea and put it in the file and/or consolidate ideas. I want to have the whole game thought out before I code anything... :P

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Sun Dec 17, 2017 12:25 pm UTC

gd1 wrote:I want to have the whole game thought out before I code anything... :P

Been there, done that, still sitting on a crate with half a dozen of the unworn T-Shirts in it. (One was basically 'Vectorised Minecraft', two decades before 'Voxel Minecraft' happened, back when both versions would have strained the hardware beyondparactical limit. Another is an improvement on the 2.5-dimension Doom engine that I let lie fallow when Duke Nukem 3D arrived and did some of the things I was planning… though maybe I should yet revive that for the things that still none of the engines appear to do…)

'Sketching it out for real' is useful. It tells you where you might have the right idea, and where you might need to rethink, whilst giving you practice. Disadvantages include ending up with (working) Spaghetti Code that you might or might not need to untangle later, and fine-tuning some elements more than others in a non-productive way. But you'll learn better by doing/trying. Trust me. Do as I say, don't do as I have done.

(An early project of mine, a simulator, was also successfully written and tested in modules (various input, processing and output elements), but then when I tried to put them all together (having all along ensured they were compatible with each other, naturally!) I discovered that I overfilled the BBC Microcomputer's memory if I tried to put all elements in there at once. But you probably won't hit that problem, thee days, and I maintain that (otherwise) that was a very sensible way of writing the program. The write-up of it also helped(/didn't hinder) in my getting me an A-grade in that computer course, alongside the exam bits!)

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Mon Dec 18, 2017 11:21 pm UTC

Soupspoon wrote:
gd1 wrote:I want to have the whole game thought out before I code anything... :P

Been there, done that, still sitting on a crate with half a dozen of the unworn T-Shirts in it. (One was basically 'Vectorised Minecraft', two decades before 'Voxel Minecraft' happened, back when both versions would have strained the hardware beyondparactical limit. Another is an improvement on the 2.5-dimension Doom engine that I let lie fallow when Duke Nukem 3D arrived and did some of the things I was planning… though maybe I should yet revive that for the things that still none of the engines appear to do…)

'Sketching it out for real' is useful. It tells you where you might have the right idea, and where you might need to rethink, whilst giving you practice. Disadvantages include ending up with (working) Spaghetti Code that you might or might not need to untangle later, and fine-tuning some elements more than others in a non-productive way. But you'll learn better by doing/trying. Trust me. Do as I say, don't do as I have done.


I wish I was cool enough to have tshirts for stuff.

As for the second part, there's so much I want to sketch out. Damage numbers, mechanics, the setting, so many ideas. I don't know if I want to program anything before I have so much down in the way of mechanics. I like to plan stuff out. And I'm a procrastinator. But I really want a lot of the mechanics down.

User avatar
Soupspoon
You have done something you shouldn't. Or are about to.
Posts: 3084
Joined: Thu Jan 28, 2016 7:00 pm UTC
Location: 53-1

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Soupspoon » Mon Dec 18, 2017 11:29 pm UTC

gd1 wrote:And I'm a procrastinator.
Why procrastinate today when you can procrastinate tomorrow?!

(That could be my motto. Eventually.)

gd1
Posts: 95
Joined: Wed Nov 14, 2012 5:42 am UTC

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby gd1 » Tue Dec 19, 2017 5:14 am UTC

Soupspoon wrote:
gd1 wrote:And I'm a procrastinator.
Why procrastinate today when you can procrastinate tomorrow?!

(That could be my motto. Eventually.)


That's a very good point. I'll have to get back to you on that sometime.

Made some (more than none progress) sort of in a way kind of. https://www.defold.com/
https://forum.defold.com/t/save-shelter-old-school-fps-coronadefoldjam/10828/35
This image of the linked game interests me in particular (not because it's the kind of game I want to make, but because it shows (I think) that an xcom apoc-ish game is possible with the game engine).
Image

I hope that it also allows for up and down blocks though (So that I can have movement in 3 dimensions). I will need to make an account and ask the person if they have multiple levels (like elevators in doom to different platform heights) to a single level. I'll probably do that at some point.

"Defold is a multi-platform game engine that simplifies development of 2D games for all major platforms – HTML5, Android, iOS, Windows, Mac OS X and Linux."

It's also nice that this engine thing is free (and pixels)

EDIT: Asked the question. Now to wait for a reply. And uninstall and reinstall a working nvidia driver because the update made it so I can't play Skyrim.

EDIT: Not programming, but I like to homebrew mtg cards

EDIT: The answers I'm getting so far from the forums of defold are looking promising. Just one more quirk about destructible environments to remove my worries and I might be able to start investing my time into learning how it works.
EDITEDIT: It appears everything I want to do should be possible. Very good. I think I'll start investing the time in learning everything I can about this game engine.

User avatar
phlip
Restorer of Worlds
Posts: 7550
Joined: Sat Sep 23, 2006 3:56 am UTC
Location: Australia
Contact:

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby phlip » Wed Dec 27, 2017 11:15 am UTC

This is going to be more of a general art advice post, than anything technical... but this is a very important discussion of advice for this, it's about 15 minutes long but I highly recommend listening to the whole thing.

For which the jist is: make something, and get it done. Don't spend forever planning the one perfect project. Make something simple, and get it done. It doesn't matter if it's not made with the "right" language, or the "right" engine. It doesn't matter if all the art is drawn freehand with a mouse in mspaint and the game is dead silent. It doesn't matter if it has absolutely no resemblance to your dream project. It doesn't matter if it's not any good. It doesn't matter if you never show it to anyone. Make something, and don't stress the details.

And then, once you've made that, make something else.

If you start from "I want to make something like Xcom" you're just setting yourself up to plan forever to try to get everything perfect, to get the perfect language, and the perfect engine, and the perfect toolkit, and the perfect game idea, and... and then you never actually start making anything, and eventually you get disillusioned by the lack of progress and drop it.

But if you make something, even though it's not your dream project, that gets you experience. That gets you started towards an understanding of how gamedev works, what pitfalls there are, the parts that are hard, the parts that are easier. You make more things, you learn more. Keep practising.

Eventually you may have the experience you need to tackle that dream project. But it shouldn't be what you try to do first.

Code: Select all

enum ಠ_ಠ {°□°╰=1, °Д°╰, ಠ益ಠ╰};
void ┻━┻︵​╰(ಠ_ಠ ⚠) {exit((int)⚠);}
[he/him/his]

User avatar
Jorpho
Posts: 6180
Joined: Wed Dec 12, 2007 5:31 am UTC
Location: Canada

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby Jorpho » Wed Jan 24, 2018 11:01 pm UTC

I can't help but notice that no one in this thread has mentioned OpenXcom yet, which was indeed written in C++ with SDL.
https://openxcom.org/

Of course, that relates to the earlier games in the series and not Apocalypse specifically, but nonetheless.

User avatar
SpitValve
Not a mod.
Posts: 5126
Joined: Tue Sep 26, 2006 9:51 am UTC
Location: Lower pork village

Re: What sort of language do you think was used to make Xcom Apocalypse?

Postby SpitValve » Thu Feb 15, 2018 12:19 pm UTC

If you seriously want to make a game like that, the best bet would probably be to start with Unity3D, which is a combination of a GUI interface and C# coding. This would make it a much more reasonable project for a lone hobbiest to achieve than trying to do it in C++. You might not get as great performance out of it as you would in a custom-built C++ code, but it probably will never get finished.

If you want to do a from-scratch C++ project just to gain C++ experience, then I'd probably go for something like a text adventure or an ASCII roguelike game.


Return to “Coding”

Who is online

Users browsing this forum: No registered users and 7 guests