#libtcod
Explore tagged Tumblr posts
sensualcoder-dev · 2 years ago
Text
Woo, it's online! Tutorial 1 for the #cpp libtcod #roguelike #programming tutorial series is finally up.
Please check it out if you like, and let me know what you think! It's my first time creating anything like this, so feedback of any kind is appreciated 😊
8 notes · View notes
snailmakesgames · 7 months ago
Text
Tumblr media Tumblr media Tumblr media
Playing around w the idea of making a classic-style roguelike rpg where u play as a post-apocalyptic cowboy .. Gold rush prospector except you're unearthing the remains of the old world and selling them for scrap ..
5 notes · View notes
roguenetdev · 2 years ago
Text
Starting development on RogueNET
Or should I call it CrawlSharp? I might call just the C# portion of this CrawlSharp, since I'm gonna be writing it entirely in C#...
ANYWAY! This is my effort to ignite the Indie roguelike development scene for developers who like C# but who'd rather have something a bit lower level than Unity, Godot, (or even python haha) (ily libtcod, nothing against ya, I just do C# dev at my job and am a bit more familiar with it ;))
There's two main repos/packages for development of Roguelike Dungeon Crawlers in C#; RogueSharp and RLNET. RogueSharp has some awesome features, but it only is targeting .NET Framework, which is pretty exclusive to friends who want to play and develop these awesome games for other CPU architectures and platforms. RLNET has not seen a single major update since 2015, so it needs a li'l love. Trying to get RLNET running on .NET 8.0 does not work nicely, since OpenTK has had some pretty significant updates since 2015, too.
0 notes
voliol · 4 years ago
Text
It should not be allowed to deprecate half of a library without adding equally useful new functions. Looking at you, tcod. I’m thankful I can finally resize the windows but at what cost, at what cost!
1 note · View note
blubberquark · 6 years ago
Text
To Pong Or Not To Pong
If people are learning to program and make games at the same time, it’s customary for more experienced game devs to exhort them to start small: Start with Pong, Tetris, a jump&run game, a shoot-’em-up.
I know you don’t want to make Pong. You want to make your own thing, and Pong already exists. But the alternative is making your own game first, and you’re much more likely to finish cloning Pong and learn something than you are to finish cloning Mass Effect.
Don’t start with a sprawling RPG with hundreds of items and skills nested in skill trees, and a dozen levels each with its own NPCs, quests, loot, set pieces and monsters.
Don’t start by making a MMORPG, because your first game probably won’t have enough players, and a MMORPG is a sprawling RPG already, plus social problems and running a server and network programming and handling a lot of persistent game state (now you need to learn databases?) thrown in.
Don’t even start by making an RTS game first, because you’ll have to deal with AI and multiple units and possibly networking.
Don’t write your own engine if you’ve never written a game in another engine before.
So you start with Pong, because you need to learn how to program first. Then you can graduate and try to make a game like Asteroids, Sokoban, Tetris, Snake, Flappy Bird, or Cookie Clicker. It doesn’t have to be an exact clone, get creative! And get feedback! You only get better at game design by letting people actually play your games.
And even then, when you are ready to make your big game, start small. When you want to become better at game design, and game feel, or when you want feedback on your games, you need a game which is running, and playable and beatable. You cannot just hack away on the 50th quest for your RPG before even starting with the mobs, loot, and the inventory system.
If you make a smaller game first, you can get feedback and grow as a game designer. If you start out on your big dream project right away, you might get hampered by the fact that your first major game is never in a state in which you want to show it to people, both because a lot of content/systems are missing, and because what you have doesn’t measure up to your grand vision.
I have seen many young people (sometimes teenagers) on tumblr start working on their big idea and post regular updates on a sideblog - but then they realised that either they didn’t know enough programming or level design or art, or they didn’t know what to do next, or they lost interest. And then they gave up, all before a first playable version. These sideblogs were often deleted after a dramatic-sounding last goodbye-post.
It doesn’t have to be like this! Make a small game first, make a bigger game, learn something about programming, learn something about game development, post your games for others to play and learn something about game design. Then you are much better equipped to make your dream idea, and hopefully you won’t feel the embarrassment that would make you delete your blog.
Well, what if you already know how to program? Should you jump right into making your grand idea? Also no!
If you already know how to program, and you know the language and engine you’re working in, making something like Pong takes you two hours. It makes sense to try something simple first, to learn the game engine. Maybe you don’t want to make Pong again, because you already did it once. Maybe you want to start with something like Gorilla.BAS, or Frogger, or a CYOA-style game, but it shouldn’t take you long and is still a good idea. Back on the old website, the Ludum Dare community had the concept of a warm-up game, something you quickly throw together to test your tools, asset pipeline, compiler, engine, and packaging/uploading process, just in case you uninstalled or upgraded your dev toolchain since the last Ludum Dare.
When you learn a new engine, consider making a warm-up game!
When not to write Pong:
If you already know how to program, and you’re learning a 3D engine, you want to make a simple DOOM clone instead of Pong.
If you already know how to make games and are a competent programmer, an online multiplayer version of Pong can be at the same time rather tricky to get right and rather boring to play compared to a local multiplayer version. You might want to write a turn-based online game first instead, or a multi-user dungeon.
If the engine/library/system you want to work with is not supposed to make games like Pong. Such systems are Twine, AGS, Bitsy, libTCOD, Inform 7, PuzzleScript, or RPG maker.
7 notes · View notes
stealthcoder · 7 years ago
Text
Side-stuff updates
I haven’t posted since Christmas for the mandatory Ludum Dare spam, but that doesn’t mean I’ve been idle. On the one hand, I joined a project at work using Cocos-2dX, so I started a smaller project at home to implement a first pass on RTS mechanics using a top-down 2D view using that library. My reference is Castle Fight, a relatively well known mod for Warcraft 3 (Fun fact: if you think about it some of the most successful games right now both on mobile or PC (most MOBAs, Clash Royale, etc) can be traced to a mod of WC3/SC, or a variation). Progress is slow because life (and to be honest, Arena of Valor -_-). I’m trying to keep over-engineering under control, and I’ve started coding some construction logic. Hopefully soon I’ll be able to show something better than this.
Tumblr media
Besides, this week began the #7DRL challenge. I’ve used the opportunity to check TDL, a Python-3 upgrade of sorts to libtcod, a c++/python library that has lots of useful functionality to code a roguelike. However, I don’t have any clear idea for a game that could use it, so for the time being I’m basically refactoring a tutorial. Hopefully I’ll come up with something. On the gif you can see how the player moves around on a map. FOV is provided  almost for free by TDL.
Tumblr media
I tried to extend the tunnelling algorithm to support diagonal corridors with some old code for a C++ roguelike project using PDCurses. The corridors are built just fine, but I need to review how surrounding walls are built to avoid overlaps. And last, I also managed to shortly revisit Roblike. I had to upgrade it to Unity 2017, which broke the alpha blending shader. While I was fixing that I also managed to replace a custom masking material with Unity’s new and shiny SpriteMask. Then I thought that replacing my custom tilemap logic with Unity tools could be an interesting excuse to resurrect the project in the not-too-distant future.
1 note · View note
draknorgame-blog · 8 years ago
Text
Draknor 0.7 Release
https://www.dropbox.com/s/68we7rauray39ti/Draknorv0.70.zip?dl=0
COMPATIBILITY: 7.0 or later
Bug Fixes
-Fixed enemies still granting renown and statistical kills if they are killed after reviving.
-Fixed a few misc. bugs with events continuing in the game even after you die.
-Fixed being able to leave sub-dungeons without making an escape roll when enemies are present.
-Fixed enemies being able to move between rooms if you tried to move, but failed.
-Fixed bug causing the guide not to appear if you died and started a new game
Features
Libtcod Console: New console, the library allows a variety of badly-needed features, such as:
-Colored text: Important lines are color-coded.
-Minimap: The upper-right now contains a 5x5 minimap displaying the area around you.
-Health and Mana display: This was already in the game, at the end of each line. However, now there are visual bars and they are always on the side.
-Continuous status effect list
-Continuous list of available moves, to make sure the player is aware of their abilities.
Quality of Life
-Enemies now have their health (or as much as you know about it) displayed next to their name in the room.
-The game will now ask you, specifically, which item you are referring to if you are vague enough to have possibly selected two items.
-“X” or “Ex” is now a shortcut for ‘look’ (as in ‘examine’)
-‘wield’ is now a shortcut for equipping items.
-Changed the phrasing on a few command-error messages to be more specific. Most notably:
-If you don’t enter a target name in a room with two or more enemies, you will now receive the message “You must specify a target (there is more than one creature here)” rather than just the normal “that is not a valid target”
-Trying to use or equip a spell tome now tells you more specifically that you have to cast the spell.
-Added a clarification for when enemies do not drop any items.
Balance
-There are now three new tomes: “Minor” tomes. Minor fire, minor mend, and minor arcane ray. These are similar but less effective versions of current spells. These have been distributed to starting classes who need more spells. Also, one of these tomes will always span in every library you find. This should allow you to always have access to some basic spell types, but still make normal tomes a valuable find.
-Maximum mana has been increased on items that grant is, generally in the range of a 30-50% increase. This is to increase the value of spellcasting items and spellcasting builds in general. To this end, mana vials and other mana restoring items now restore about 50% more mana as well.
-Mudman now has 1 physical DR and 7 health. (Previously 2 and 8)
-Crusaders have received a modest buff to accuracy and defense
Misc
nothing
0 notes
willraman-blog · 13 years ago
Link
I've posted the client part of the legacy of a warlord multiplayer game on bitbucket. https://bitbucket.org/willraman/legacy-of-a-warlord-client
It is still pretty rough around the edges but it is shaping up nicely.
Soon as the client can connect with the server in a more robust fashion (character creation finished). I'll post the server application to http://www.legacyofawarlord.com.
Will
3 notes · View notes
wasteoid-dev · 10 years ago
Photo
Tumblr media
bumping into a wall doesn’t waste a turn anymore! the solution was a lot simpler than i what i was trying at. nice.
2 notes · View notes
ultrapyrl · 12 years ago
Text
tracking changes
okay, we are nearing an alpha stage, where we will be able to think about more creative things then algebra and recursive dungeon generating algorithms. so in order to make the code easier for you to understand, i am do a comment run on each function and class and basically everything i can explain easily, so that if you have an idea and im not available, you can see how it might work and thus be better able to explain to me how i can implement it and if its possible.
latest additions
the 5 key on the numpad will now pick up an item, or if there is no item to pick up, it will just pass your action (clarrification: picking up an item does not turn time forward causing monsters to take an action. passing your turn by pressing 5 while not on top of an item will cause time to move forward.
scaling item and monster chances: monsters can now have their spawn chances changed by dungeon level or by a bracket of dungeon levels, same with items
press left alt and the 9 key(above the i, NOT on the numpad) to toggle debug mode. debug mode will cause you to not die upon reaching 0 health and allow you to pass through walls. other features will be added to debug mode, that will allow bug testing to be much easier, and provide potential for mode iteration for the player later down the line.
so who knows if we'll ever actually get to alpha lol, ive been working on this for a year by myself, and you guys are just getting on board. once we get the new art assets worked in it'll be a more complete experience. ill keep plunking away.
heres some stuff im working on implementing
a new BSP based dungeon generator that will solve the exitless first room problem + an unimaginable potential other things
spawning items and monsters for debug mode
equipping items and monsters equipped with items
the scoring system and high score board
2 notes · View notes
porucznik · 13 years ago
Text
Where am I
Dear diary... OK, to sum up: **Done:** - mastered FFI to connect from Ruby (JRuby to be 100% correct) to [libtcod](http://doryen.eptalys.net/libtcod/) - tested JRuby connection to libtcod on both Linux and Windows - working physics engine (as for now for terrain only - no gas/fluid) based on Verlet's integration scheme, but using Chebyshev distance, arbitrary mass particles, no direct support for particle radius (though can be done via interparticle constraints) - simple test of physics engine visualization on console (libtcod) - skeletal UI engine - component hierarchy, z-ordering, basics of focus, event queue, key events, components - panel (generic container), label, button, text field - proof-of-concept - actor enviroment engine (with abstract locations, custom actions, modularized AI, equality of AI and "player" actors, movement, timing of events) - custom simple DB instead of flat files (one index, queries based on Ruby blocks) - large stack of notes **TODO (near future):** 1. Map/item/actor representation (zoning, final size) 1. Basic engine (moving autonomous actors, pickable items) 1. Basic UI (finish focus, map component, designation system, mouse support (optional)) 1. Physics engine support for constraint strength - fracture of objects. 1. Incorporation of physics engine (terrain tesselation, feedback, multicore support) 1. Actions (altering terrain, item modification) 1. Orders (issuing, obeying, basic AI) 1. Basic world generation (ontogenetic, single level, flat layers with overground structures/flora) **TODO (further):** 1. Curses support (running on remote terminal) 1. Physical actors interaction (i.e. fighting) 1. Full support from AI for actions and orders 1. Fluids/Gas 1. Simple mechanics based on physics engine 1. World generation (teleological in terrain aspect, ontogenetic in society) 1. Fill engine with meaningful data **TODO (dreams):** 1. Isometric client (how to support remote server with that) 1. Teleological population/nation creation 1. Multiuser enviroment
1 note · View note
sensualcoder-dev · 2 years ago
Text
I'm back
The recent Unity kerfuffle got me thinking about implementing a game engine again and reinvigorated me to work on the libtcod tutorials. Ended up reworking the first tutorial code to use the newer Contexts that libtcod has moved to, and even refactored my second tutorial code as well!
The actual tutorial text will hopefully come later this week sometime, though I did diagnose a weird issue with the CSS I was using on my pages so that it doesn't show a white bar on the side of the code blocks while in dark mode :D
Getting excited to be in C++ programming land working on engine stuff again!
1 note · View note
zolvaring · 9 years ago
Photo
Tumblr media
Here is a similar effect using a cave palette with an “underground” sense to it.
0 notes
tinblue-blog · 11 years ago
Text
Progress Update #1
Started work on the server application. Have multiplayer ships moving about the map and displaying on each client and working well.
I spent a lot of time tackling memory leaks - better to attack them now rather than when the sourcecode gets even more complex!
I was initially toying with the idea of the server generating the procedural galaxy and sending it to the clients in packets. I have since found a way for every client to generate the exact same procedurally generated galaxy of stars (regardless of each client exploring different parts of the galaxy at different times) which saves a shit load of server coding.
Consider this as the first official progress update.
0 notes
draknorgame-blog · 8 years ago
Text
Status Update
THIS IS THE HARDEST QUARTER OF COLLEGE IVE HAD IN A REALLY LONG TIME
I HAVE GOTTEN NOTHING DONE
In other news, I am going to experiment with the libtcod library and see if it will help me add some better user interface to the game, such as colored text, a minimap, and if possible some graphics and menus.
0 notes
wasteoid-dev · 10 years ago
Photo
Tumblr media
0.05 release.
basic needs implemented, among other under-the-hood things. as usual, get the newest build from http://slug.god.jp/waste/
1 note · View note