Search Unity

I want to buy a 2.5D FPS template but there isn't a single one out there?

Discussion in '2D' started by thecomediant, Jan 18, 2019.

  1. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    I want to create a 2.5D FPS, but I can't really code so I would need the skeleton of the game. The sprites must move with the camera as seen in old school games like Doom or Shadow Warrior. However I cannot find this anywhere. I have extensive experience on every other field as a modder. In fact I could make the game in GZDoom but I want something better, with multiplayer support and with a lot of documentation in case I need help, and no copyright attachments to anything that could give me problems in the future, so Unity is the only thing I can think off, I just need the template to start working on top of something and not from scratch which is impossible for me. Any ideas??
     
  2. eses

    eses

    Joined:
    Feb 26, 2013
    Posts:
    2,637
    @thecomediant

    To me it sounds you should start with something simpler... but here are some tips.

    You could do this with any kit you find... just don't rotate the camera along it's x-axis. Then you have 2.5d view of maze or level, if you just don't rotate your camera freely.

    Use suitable graphics, if you want to emulate the graphics style of the era (90s/2000). Use textures without filtering, i.e. set the filtering to point, so everything looks blocky. You could even use render texture to make your screen look low-res, retro / lo-fi style.

    For character sprites you could use sprites that face camera, aka billboards. Do reading about this topic, it's not too hard to do in Unity, if you just need one camera view.
     
  3. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    Well it's not really about not being able to look up and down, I want to be able to look up and down, like on the build engine or GZDoom

    What I need is:

    1) A menu with all the stuff, to select episode, order of maps... etc
    2) Sprite system, so enemy sprites rotate depending on your angle
    3) Weapon system, to change weapons and so on

    Basically the skeleton, so I can treat it as modding rather than making the game from scratch. I can't code. My experience is with some scripting, for instance the ACS scripting language from ZDoom, but I cant never code the stuff that has to do with the engine itself.

    I can do the art look retro myself, I can do the sounds, I can do everything else, I just need tha initial help of the skeleton of the Duke 3D type game.
     
  4. eses

    eses

    Joined:
    Feb 26, 2013
    Posts:
    2,637
  5. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    I can't do much with that. I don't think I can't do this without a template that contains all of that. It's not that specific imo.. just like there's a "fps construnction kit" I don't get why no one made one for sprite based games.
     
  6. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    I need something like this:



    How the f*ck im supposed to code that from scratch? :confused:
     
  7. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    Is that a 3D world camera? It's rendering 2d textures though.
     
  8. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    If you are OK with a 2.5d (like this video) it makes everything easier. A simple 3d character with the camera attached to it, enemies are just sprites / meshes rotated to always face the player, raycast from the camera toward forward you when you shoot, if it hits, reduce enemy's Hp.

    I even feel like it'll be easier to learn how to do that than to buy an asset then try to figure out how it works, trust me, I tried to do that but ended up having to learn anyway.
     
  9. eses

    eses

    Joined:
    Feb 26, 2013
    Posts:
    2,637
    @thecomediant

    Actually, the video you posted shows (0:53) it doesn't use 2.5d rendering for environment, vertical walls will skew when not looking towards horizon. Unlike if using y-shearing.

    I got interested, and came across this: "The OpenGL renderer featured in GZDoom and Zandronum performs true 3D projection and does not use Y-shearing." (source: https://zdoom.org/wiki/Y-shearing)

    So you can use any kit and sprites like I already said, if you want to mimic this look.

    Perspective distortion probably isn't a problem, if you don't allow too much up and down tilting of camera which would ruin the illusion of 2.5d / y-shearing based perspective effect.
     
  10. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9

    Ok I may have confused people with "2.5d". What I meant is, i basically need sprite guns and sprite enemies. The rest is just aesthetics: fitting low res textures, fitting map geometry, fitting sound... I can solve that. However I cannot code the engine myself, I have no idea, im an artist (again, I can do maps, I can do textures, I can do sprites, I can do sound.. I cannot code beyond basic scripts and always looking at examples). That is what I was looking at existing engines and mod on top of it and license it as my own game however im out of options because eDuke32 and GZDoom has S***ty multiplayer plus licensing existing engines is just annoying.
     
  11. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    But I would be under the same problem... getting it to the point where it has what I need.
     
  12. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
  13. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
  14. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    A prototype of what you are wanting to create would require less than 200 lines of code to create yourself if you use some premade CharacterControllers and just tweak them, and most of those will be the same lines with different values. And all those lines of codes are easy to find by googling a sentance explaining what you want in english, and easy to tweak even for a beginner.

    You really should give it a try (and maybe tell us if you have troubles finding or making something), you'll have something free, and won't have to work around the limitations and commercial agreements of an asset that isn't yours.
    You're not really making something from scratch, unity handles 99% of the stuff that look complicated.

    You'll have to code in C++ in Unreal engine, and in C# (usually) for unity. Imho C# is easier to use for beginners.
     
    Last edited: Jan 26, 2019
    satchell likes this.
  15. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    Line count isn't irrelevant there. It shows that if you find which line do what, with a low amount of required lines, you can do it without making lots of logic errors. The more there are lines of codes, the more you can get lost on which part of your code does what.

    With an entire game made of 200 lines of codes, that will be split into multiple scripts making each max 40 lines, this is totally a thing that can be used as an exercise to learn unity and programmation.

    If you can't do that, you won't be able to use an asset from the unity store and tweak it to your needs.
     
  16. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    Any tutorial for beginners out there will explain you what is a variable, what is a class, and what is a function, how to set them, how to create them, how to call them, how to attach them to an object in unity. These are 30 minutes long videos.

    Once you get that, you can ask google: "how to know which way an object is facing Unity" will tell you how it's expressed, and how to use it, thanks to websites like Unity Answers and StackOverflow.
    For this question as an example, there is ONE line of code telling you the angle an object is facing, and the entire first page of results in google will show you various examples of poeple using it.

    Plus if he needs help, he can ask on this very forum some tips and examples.

    I'm not underestimating how much i know code. I started coding less than 2 years ago, before that, i never ever coded anything. I still remember what was hard, and what wasn't.
     
    Last edited: Jan 26, 2019
  17. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    Edited...
    Are you in it for the long haul or a quick buck? Honestly I don't want to promote UE on this forum but definitely try both. Don't go into this wanting to make the big game, start with very simple stuff. watch a few tutorials and recreate stuff from scratch, this is where Unity is destroying UE. You'll have little pieces slowly accumulating... Maybe start with creating the UI and saving data between scenes. You'll get to a point where you are backtracking and may have to alter your code if you don't implement this important piece from the beginning. Serialized data is pretty simple but just make sure to get a good grasp on this before jumping in the deep end.

    In general not serialized data. Think about it as you have 3 pages of code that all communicate with each other that are component scripts associated to the objects in the editor. In your thoughts compartmentalize those 3 scripts and components. Once you have the 3 pages could be associated to your player, that are subject to your base, which has say 2 pages, that's associated to a 1 page manager script, then you have a node frame of mind.
     
    Last edited: Jan 26, 2019
  18. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    Sorry refresh I edited pretty good.. But don't think it's to hard this forum is here to help.
     
  19. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    If it's architecture you are not understanding just grab something from the asset store and tare it apart.
     
  20. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    With this asset
    Open the first person scene
    Then start adding you textures
     
  21. thecomediant

    thecomediant

    Joined:
    Jan 18, 2019
    Posts:
    9
    Im near 30 and I have no experience with any of that. Im a modder not a coder. I have no idea how to go about any of what I said and I have no idea how I would begin to learn from scratch aimed to what I want to do:

    1) Sprites for the enemies angled depending on the camera like in Doom or Duke3d: all of this has no tutorials anywhere
    2) Sprites for the guns
    3) All the menus/order of the maps/saving and loading/any other additional needed code

    That is what I need. I am really good at making maps, at sound, and at art. I just cannot code beyond scripts. Like ZDoom scripts, or modding the .con files on Duke3D. I think you guys are deluded in how easy doing 1 2 and 3 supposedly is when you don't know anything and aren't really gifted for that. I always sucked at math to boot. If there was a tutorial in how to do it I could follow it and learn it and then tweak what I needed (similar to learning scripts in ZDoom) but needing to figure out things yourself I just can't do that.
     
    Last edited: Jan 28, 2019
  22. eses

    eses

    Joined:
    Feb 26, 2013
    Posts:
    2,637
    @thecomediant

    I'm in/was in the same boat, mostly spent my life doing 3d graphics. I too suck at math. However, I decided diversify my skills. Programming doesn't have to be very math heavy, there are many "levels" of programming. Unity as game engine takes care of the hard math. You can also avoid many math solutions with rigging / game object rigs instead..

    You'll notice that you won't get far with Unity if you try to find just exactly fitting toolkit, which you could skin, then drop some animations and levels.

    Better learn the basics, it won't take many months, but it won't be instant either.

    Start with the learn section. Watch the videos. Do the roll-a-ball tutorial. Then decide what next. You'll get to point where you can modify scripts and create these yourself. Then you can start learning little bit C# language specific stuff that Unity tutorials won't cover (or cover just superficially), if need be.

    Unity is not unfortunately a pile of building blocks which you could just create something from. Asset store has many assets, and probably is still really big cash machine for Unity, but what they don't want to tell you, is that you still need to be able to glue things together - yourself.
     
  23. Belcherman

    Belcherman

    Joined:
    Jun 7, 2017
    Posts:
    30
    Well if your talking Doom2; I made a TC 23 years ago :)
     
    satchell likes this.
  24. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    What makes Unreal better for 3D ?
    Okay, Unreal has DirectX12, not sure you need it for a 2.5d Doom-like tho.

    And honestly, Blueprints and visual scripting in general isn't that easy to use in my opinion, you still have to learn function names, set variables, still have to use your brain to make things behave with each other the correct way ... The only difference i see is it display squares on screen instead of lines.

    There also are assets in the unity store for visual scripting if you really enjoy working with geometric shapes.
     
  25. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    Well, I just opened an introduction tutorial about BluePrint, guess what, strings are called strings, int are called int. Lots of stuff are simplified, but you need to know the name of those simplified things to use them. Yeah, i can create a spawn point for my character. I could just create a gameObject in unity, and instantiate my character at its position. Needs the same amount of knowledge. I really feel it's more a matter of tastes.


    And yeah, seriously, what really makes Unreal better ? You can't just say something is better without saying why, that would just be advertising.
     
  26. hlw

    hlw

    Joined:
    Aug 12, 2017
    Posts:
    250
    Well, i offered him to help him creating a solution that PERFECTLY fits his needs. All he needs to do is to follow a basic tutorial like "roll a ball" first, to stop thinking that coding is for geeks that speak chinese as a native language, and to tell me what he needs me to explain.

    Okay, I face the facts, if the OP does the exact same thing in Unreal that he would have done in Unity, his game will magically become way more beautiful, everybody knows that. Sure, no point having a discussion about that.

    The problem with visual scripting, is that you won't really learn anything from what you are doing. Plus it gets impossible to handle as the project scales up . It's insanely nice for prototyping, sure. But if the OP can't make a big game out of it, nor learn how to make a big game out of it, what's the purpose ?

    Tho, i'm not telling that unreal is a bad choice, nor that unity is a better choice. He asked for help on the unity forum, I offer help for the unity engine.
     
    satchell likes this.
  27. satchell

    satchell

    Joined:
    Jul 2, 2014
    Posts:
    107
    The questions are still a little broad to answer for such a specific request. Unless you want to use the Unreal project Shorely mentioned. Though if you are committed to Unity open the Unity Hub at the top select the Learn tab on the left there's more materials to get you started. You might actually be able to do the bulk with that.

    I copied some of this from another of my posts.
    I can appreciate where your concerns are coming from trust me. Here's my story

    I'm not smart 1.9 gpa. I consider it an incredible hobby for artists or creators. At 29 yo my first app was just menu stuff UI(User Interface) on blackberry maybe 09 or 2010 it took 9 months to learn and feel comfortable, then android, both with the Eclipse IDE(I used java). C# is slightly easier than Java in my opinion. If I took myself 10 years ago to today It'd be too easy. Photoshop(Gimp), blender, Unity, ability to comprehend as few as 3 up to 100's of pages of code. I've published 6 original titles. While working full time jobs. Anyone can do it. Honestly you would want to learn the basics like string, int, bool, enum...... Yes it's very overwhelming but use tools like this forum, Google and youtube.

    This is a search term I would use in youtube "unity 2d texture in 3d world". Tweak it as needed but if you don't take a few months to learn yourself you'll find it difficult to phrase it correctly.

    Also don't expect things to just fall into place it takes time even major publisher's games are in dev for at least a year or more.

    EDIT: This dude Brackeys is pretty solid for tuts
     
    Last edited: Jan 29, 2019