Hey thanks!
CDL Creative
Creator of
Recent community posts
I'm very glad you do! You'll be excited to know that I'm currently working on texture packing, so each unique texture will no longer be a separate draw call! It's already working on floor and ceiling textures! :P Once the walls and floor are implemented, there should be some dramatic frame rate boosts!
Combat Cats is a tile-matching game with unique combat aspects that add RPG and adventure elements. Kitty Island is in shambles. This once purrfect paradise is now without an ounce of catnip. You, a member of the Kitty Island Homeland Security's veteran Ace Fighter Pilots, are the last hope to return peace and harmony.
Find out more here:
With the Wad Lab beta release looming ever closer, I felt it was a great time to share some vital information to prepare you for playing around with some DopeFish goodness.
First thing's first, what is the Wad Lab, and how does it differ from DopeFish?
Wad Lab is sort of a testbed, it is powered by the DopeFish engine, but it is NOT the DopeFish engine. Instead this tool gives you the ability to test out new features of the engine on your own wads, given that you follow the proper protocol. And don't worry, this will get easier as the engine gains more features!
How can you use the Wad Lab with your own wads? Well there are a few important rules to follow. Currently DopeFish only works correctly wads that have been processed by supported Node Builders. Currently the only supported node builder is GLBSP. Luckily Wad Lab comes with GLBSP included, and instructions on how to use it! In the future more node builders will be supported, and DopeFish may even come with one built in, leaving less for you to worry about!
Let's look at the UI!
You'll notice a readout on the right side of the screen, this will tells you various bits of information gleamed from the wad that you have loaded. It will also display any warnings, such as if there's no wad currently loaded, or if the wad is of an unsupported format.
On the left side of the screen you'll see our game window. This is here for a very important reason. Wad files contain sprites that are specific to a certain game. Each of the available games here contain their own database, however entries from a database in the game Heretic may be referenced using the same ID as some entry from the game Doom. So knowing which database to check is very important, and unfortunately, wads do not have any information stored in them that can tell the system what game they are for. Therefore the user must decide that.
Under the game window are your configuration settings. Load wad is self explanatory, but skill and multiplayer may be a bit confusing if you're not used to working with the wad format. See, items and creatures on a map can be assigned certain tags, such as skill number, or multiplayer. What these do is tell the game that will be loading the map that these entities should only be spawned if the game settings match the assigned tags. So if you set the Skill to 3, then only entities that are meant for a level difficulty of three or lower will be added to the map. Add thusly, toggling the multiplayer switch to the on position will tell the Wad Lab to load any entities on the map that are tagged for multiplayer.
And finally we have the map setting, and launch. It's pretty apparent what map does, simply typing in the name of a map in the wad will tell the game which level to transport you to when you click launch. However if you're not aware, in traditional wads, there are two ways a map can be named, ExNy, where x represents an episode or chapter, and y represents what map number in that episode or chapter. Such as E2M4 will take you to Episode 2, Map 4. And then there is the MAPxx format, where xx represents a any two digit number, traditionally from 01-32 or higher in some cases.
How will you know which naming convention to use? Well when you're designing your own levels you can choose whichever feels the best for you. However when loading from any of the wads that the Wad Lab ships with, the following rules will apply:
Freedoom, Doom, and Heretic all use the ExMy format.
Freedoom 2, Doom 2, and Hexen all use the MAPxx format.
Once you've entered in all of your configuration settings you're ready to play. Just hit the launch button and let the system load. If your wad isn't broken and you've chosen a valid map name you will be transported into a fantastical new world of pixelated and low poly goodness. The controls in this world are very simple, "WASD" to move around, "Space" to jump, and press "F" to pay re.... to interact with doors and switches. Pressing the "Enter" key will unlock the mouse from the screen and pressing the "Esc" key will terminate the program freeing you to go about your business.
That's really about all there is to know about the Wad Lab! The first release is coming very soon, but keep in mind this is all a work in progress, and that you will be playing with the Wad Lab at your own risk. The frame rates will be abysmal in some levels until further features are implemented into the DopeFish render pipeline. Things may even crash or make really abrupt and startling noises! That's okay, It's all being worked on! ( by one guy, give me a break man! :P )
1. What is a wad?
- Let's let Wikipedia answer this: "Doom WAD is the default format of package files for the video game Doom and its sequel Doom II: Hell on Earth, that contain sprites, levels, and game data. WAD stands for Where's All the Data? Immediately after its release in 1993, Doom attracted a sizeable following of players who created their own mods for WAD files—packages containing levels, graphics, and other game data—and played a vital part in spawning the mod-making culture which is now commonplace for first-person shooter games. Thousands of WADs have been created for Doom, ranging from single custom levels to full original games; most of these can be freely downloaded over the Internet. Several WADs have also been released commercially, and for some people the WAD-making hobby became a gateway to a professional career as a level designer.
2. Is this a source port, and are you going to make the game fully playable?
- No, this is not a source port, you will not be able to play Doom, or Heretic and so on using DopeFish. However, you will be able to explore the maps from those games should you choose to. But there will be no enemy AI, no multiplayer, and no beating of any levels to move on to another. All this system does is gives you a way to easily load and integrate complex 3D levels into your projects complete with fully operational map logic.
3. Why isn't this free, aren't source ports supposed to be free?
- DopeFish is not a source port, and as such does not contain the original Doom engine code which is available freely under a GPL license. I have coded most everything found in this engine from scratch over a long period of time. The roots of development on DF began in late 2015. I think a few dollars of your support is worth the ease of use you will get from this system, and will go a long way towards keeping me from going broke.
4. What are the drawbacks from using a system like this versus modelling my level geometry in something like Blender or Maya?
- Geometry in the wad format consists of essentially 2d polygonal shapes that are extruded at various heights. This means that things like sloped terrain, or overhangs are currently not possible. Also the system currently only works with GL wads, meaning that every time you change your level geometry, you have to process your wad file using a program called glbsp.exe. Luckily this particular issue will be removed in a future update, making this compatible with all "vanilla" Doom wads without any extra processing. And finally, textures have to be indexed. Meaning that true color png's are currently not possible to load from a wad file, and instead textures must be converted to use the palette saved in the wad. This issue will be negatable using the texture override feature coming in a future update.
5. Are you going to add stuff like sloped floors and overhangs?
- In the recent years additions have been created for the wad format that allow for features like slopes, overhangs, dynamic lighting, and more. I would love to have these features in DF, however there is much work to be done first. But you can rest assured knowing that's exactly what I want to do!
A lot of you are probably asking yourselves, "Self, why would I want to load maps from some other game into my own game?"
The answer to that question is simple. You wouldn't. Copyright laws wouldn't let you sell your game if it contained content copyrighted by someone else.
So how then is DopeFish useful for you?
Imagine setting up a 3D scene in game maker without using any assets. You have to create vertex buffers to represent your 3d models, each polygon of your model is made up of 3 vertices, each getting roughly a single line of code to add to your buffer. For a simple 3 sided pyramid you're looking at a minimum of 11 lines of code just to build the mode.
Now imagine what it would take to create a complex 3D level using that same method. I would just die, that's more work than it's even worth when compared to how easily one can display complexe 3D scenes in, say, Unity, or UE4.
Now instead, imagine building a level using a well established tool like Doom Builder 2:
Complex geometric shapes like these can be created with a few simple clicks. Assigning textures and placing objects into the scene is just as easy. You can even change environmental settings like light level by just using the mouse wheel. Imagine if you could load that level you just made into Game Maker with just a couple of lines of code and it would JUST WORK.
This is the goal of the DopeFish to put the power of the easiest and fastest level building workflow into the hands of Game Maker users. Complex events like triggering a door to open when flipping a switch on the opposite end of the map, or stepping into a new room only to cause the ceiling to come crushing down on top of you are not only possible, but so easy that you don't even have to program them into your game. The map importer will handle those events for you!
Imagine not having your sprite resources filled with hundreds of textures. Instead DF can load those straight from the wad file itself, decluttering your resource tree.
Importing your own textures and sprites into a wad file is pretty simple using an app like Slade:
Loading your assets from the wad file instead of adding them into your resource tree means that you can expand the content of your games without having to rebuild your source code.
DF aims to be the easiest way to create 3D environments in Game Maker with a retro aesthetic.
Hopefully this post has helped to shed some light for those of you who may be wondering what this thing is all about. If you have any further questions please feel free to leave a comment below. Or check out the FAQ here in the DopeFish Community!
Hey guys, just released two pixel art game assets on the old "Itchio." If there's enough interest, I'll keep releasing new packs!
Qubenoid: Scifi Block World Pack:
1Bit RPG: Overworld Tileset:
I'd love your feedback on the assets themselves, and their prices. I've been developing games for a long time but haven't released any public assets for some time so hopefully I'm doing it right! :P