A downloadable asset pack

Buy Now$6.00 USD or more

Check out my youtube playlist to see the progress with this engine:

https://www.youtube.com/playlist?list=PLIAj16m658TntagxhA02pA4rSoLaO6ua0


This is a game framework/engine I have been working on in game maker. It features:

- Easy to add Weapons and Walls
- Basic 3D physics, jumping, crouching and crouch jumping
- Example assets to learn from
- A LOT of scripts for building from
- 3D RAY CASTING!!!
- Camera Visual Effects (Even color palettes!)
- Simple Finite-State AI


If you want to build a game like the original doom, then this framework is definitely for you. No hassle with having to program your own physics, mouse look, weapon functionality etc. Just fiddle with variables and assets and away you go. Create a 3D platformer if you wish!


TO COME IN THE FUTURE:
- Tutorial videos on building Wolf3D and a Simple Doom clone from scratch using the scripts only
- Save/Load system
- Main Menu
- Am open to requests
- Shadow system to work with the lighting system
- Possible bump mapping
- Many preset characters, weapons and walls


NOTE: It was made in GM:Studio 1.4, but has been confirmed to work in GM:Studio 2

StatusReleased
CategoryAssets
Rating
(3)
AuthorH-Tech

Purchase

Buy Now$6.00 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $6 USD. You will get access to the following files:

DoomGameEngine.gmz 1 MB
DoomGameEngineV2.gmz 1 MB
DoomGameEngineV3.gmz 1 MB
DoomGameEngineV4.gmz 1 MB
DoomGameEngineGMS2.yyz 2 MB

Comments

Log in with itch.io to leave a comment.

Is there a quick guide or a note I'm missing on the process of adding a simple enemy to the game? 

(+1)

I will work on some tutorials for various things like that once I get my good laptop back up and running 

Thanks!  I did figure it out and looking at everything more I’ve been able to figure out everything I need but tutorials would still be awesome!  This has been the best available 3D resource for GMS2.

Are you having any issues with the rendering in GMS2? I had an email from someone saying they cant see the wall textures but I couldn't replicate the issue

(+1)

I was having issues with the original wall textures, but I made my own and replaced them without changing any code and the ones I imported in showed up no problem.

Is there an "easy" option to make the ceiling solid with collisions?

If you duplicate the floor object and in the create event set the z position to the height you would like the ceiling

Deleted post

Hi. What do you mean? What part did you find badly optimized so I can fix the issue?

Deleted post

I see what you mean. I would suggest resizing walls rather than adding heaps in a row to drop the object count. Am unsure if it's a game maker limitation or in my code somewhere

Deleted post

No worries, and an update is still in the works. Currently working on making an array based world but game maker isn't performing so well with multiple 3d arrays. Need to find a work around

(+1)

I was 'Sat on the Fence' about buying this as id rather learn how to make a 3D Doom Clone than Add to another Engine, but noticing that its the fraction of the price thats
on the YoYo Marketplace, I decided to buy .. The future updates look exciting too .. Saveing and loading should be a great addition.. Good Luck!

I would like to do a tutorial but it will take a lot of preparation and work, and I am hard up with time due to working so the best I can do at the moment is just working on the updates of this engine until I can do a tutorial

(+1)

Its not a problem, Ive bought it anyway .. Ill add my own 'Twist' to your engine! :)

looks very nice; any updates on this one?

I am still working on the lighting system to make it more solid before I release the next update

thanks, looks really nice so far

(+2)

Update V4:

Changes:
- Add Per Pixel Lighting system (maximum 16 lights at the moment)
- Add simple shooting script for the AI characters, they stop when they shoot and have a reload time
- Add player making hurt sound and red screen flash when hit by enemy bullet (no health yet)

(+2)

Update V3:

Changes:
- Add script and Shader for color palettes. Add a 256x1 color palette, and it will overwrite the default color palette

(+1)

Update V2:

Changes:
- Screen shake effect script (just set a length of time for the shake and shake strength)
- Added screen effects (invert colors, black and white etc) (Press '1' to see the different effects)
- Added simple character scripts (Uses a basic Finite-State AI. Not fully completed yet, but has FOV, chasing and losing interest. Also idle wandering if so desired
- Weapon shooting scripts utilize the Screen Shake script

(+2)

Very very nice! Can you please add a simple enemy(shoot, chase?) GMS 2 Tested - it works fine! Yay!!

(+1)

Yup I am currently working on some scripts to make adding characters as easy as weapons etc. I will release the update once it is done.

Thank you for confirming that it works in GMS 2. Any other features you would find useful? Assuming it's with in the realms of Game Makers capabilities :P

(+1)

Other features...  Maybe some basic lights and shadows :) You made great job! Looking forward to new updates!

(+1)

I have been messing around with Shaders, so lighting and shadows may be a possibility in the future. I have just released an update.

Changes:
- Screen shake effect script (just set a length of time for the shake and shake strength)
- Added screen effects (invert colors, black and white etc) (Press '1' to see the different effects)
- Added simple character scripts (Uses a basic Finite-State AI. Not fully completed yet, but has FOV, chasing and losing interest. Also idle wandering if so desired
- Weapon shooting scripts utilize the Screen Shake script

Wow! Thats nice!!! Can you add an enemy capable of shooting? Sorry, im new to GMS... how can i change weapon rate of fire? Thank you!

(+1)

Yup sure thing.

In a weapon object you will see in the create event there is a script being called. You could add attackSpeed = 0.8; or what ever number you wish to set it to. Just changes the rate it goes through the sub images. I will add extra scripts for that like "doom_weapon_set_firerate" or something along those lines

(+1)

I have made a simple shoot script, and have got the enemy shooting randomly when the player is in range. When the player gets hit he makes a hurt sound, and the screen flashes red.

Also, I have made a simple lighting system. The only script you need for that is doom_light_add(x, y, z, r, g, b, radius), but there is an object called oLight that you can look at and mess with the variables.

(+2)

Suggestion: Save system would be amazing

(+1)

Definitely something I will incorporate