pataro
libtcod
pataro | libtcod | |
---|---|---|
8 | 23 | |
25 | 944 | |
- | 3.1% | |
5.2 | 7.8 | |
7 months ago | 4 months ago | |
C++ | C | |
- | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pataro
-
Sharing Saturday #440
I have started working again on Pataro (GitHub), my modern C++ implementation of the C++ roguelike tutorial on RogueBasin.
-
Pataro II: Pataro Harder
Today I'm back to working on Pataro, the roguelike built on libtcod that made up much of my Hacktoberfest efforts. I had been assigned to an issue requesting the addition of serialization and deserialization, but unfortunately ran out of time and wasn't able to finish the former or start the latter. I ran into issues with Cereal, and had a hard time figuring out the structure of the program and how to go about implementing serialization for all the relevant components. At the end of that attempt I mentioned that if I were to try again I'd start by testing out Cereal separately and getting a handle on that before trying to implement it in Pataro - so that's what I'm doing today.
-
Hacktoberfest 5
I am once again working on Pataro today, and I've succeeded in clearing up some issues and creating new ones. I've been stuck on an issue where Visual Studio was raising errors in the portion of the code where I call the cereal archive on some types, but was able to clear up that issue by moving the save function definitions out of their respective headers and into the corresponding .cpp files. Examining this repo and its use of cereal again, I was able to get a bit clearer of an idea of how it's implemented, and I included just about every relevant cereal header I could find to try and avoid any issues like the previous one popping up again (with the intention of later removing whichever I can to avoid redundant inclusions).
-
Hacktoberfest 4
On the Pataro front, I've started looking at other examples of people using cereal for their games. It seems to be a popular choice for roguelike games like this, so hopefully I can figure out both the syntax problems I'm facing, as well as logical ones like how the program should be structured to have all the necessary data properly serialized and deserialized.
-
Hacktoberfest 3
Progress on one front but roadblocks on another. After my post yesterday outlining my plans to add serialization to Pataro I ran into some issues with calling the archive class in cereal wherein the call wouldn't go through due to an incorrect number of arguments. This happened with both vector and size_t data members, and I'm still investigating why.
-
Hacktoberfest 2
One of the biggest problems I've faced while tackling this has been figuring out the structure of the program. I've never worked on a game before so the structure of how all the different pieces fit together is alien to me, but I've been slowly figuring it out over the past days and weeks. After getting in touch with the developer of (Pataro)[https://github.com/SuperFola/pataro] and reading tutorials on developing with (libtcod)[https://github.com/libtcod/libtcod] I think I have a better idea of how to approach it.
-
Hacktoberfest 1
This month I'm working on participating in Hacktoberfest, starting with contributing to a roguelike game called Pataro built on the libtcod roguelike development library. I chose to work on adding a serialization mechanism to save the player's progress and so far it's involved a lot of new and challenging processes. I haven't completed my work yet but wanted to start sharing progress on my learning and status.
-
Advices on games' architecture
Note: I implemented this pattern here, and they are executed here.
libtcod
-
Sharing Saturday #459
libtcod | GitHub | Issues | Forum | Changelog | Documentation | Template
-
Game screen: write terminal emulator or use libtcod?
Libtcod itself uses SDL2. It maps tile glyphs to a texture atlas and maps Unicode codepoints to tile positions. Then it has another data structure called a console which has the background color, foreground color, and codepoint for each tile on that console. It then uses SDL_RenderGeometry to quickly render the background and colored glyphs to an SDL texture, skipping unchanged tiles as an optimization, then renders that texture to the window. The C99 source is here: renderer_sdl2.h renderer_sdl2.c, a C++ version would surely look better.
- Sharing Saturday #440
-
what minor tech projects do you absolutely adore?
libtcod has always been a favorite of mine. Does a lot of things to zero fanfare outside the indie roguelike scene.
-
Sharing Saturday #427
I've ended up recovering the old 1.3.2 to 1.5.0 builds of libtcod. You can find them on the GitHub releases page. Most of, maybe all of the other places which had these builds are down, but thankfully Jice still had copies of these builds.
-
RoguelikeDev Does The Complete Roguelike Tutorial - Week 3
FoV is a port from C -> Java of the algorithm found here
-
Sharing Saturday #413
libtcod | GitHub | Issues | Forum | Changelog | Documentation | Template
-
SRiC ("Simple" Roguelike in C) has stairs now, and multiple floors!
Hey man, I don't wanna piss in your cherrios if you're intentionally doing it all the hard way, but you know about tcod right? https://github.com/libtcod/libtcod/
-
libtcod roguelike C tutorial?
Browsing the repo, looks like it has a full C only API, https://github.com/libtcod/libtcod/blob/master/src/libtcod/libtcod.h
-
The 7DRL Challenge 2022 is announced! Create a complete roguelike game in 7 days.
libtcod support for terminals is in progress at least for ANSI true colour, and I have a minimal compatibility layer for UNIX only.
What are some alternatives?
Cockatrice - A cross-platform virtual tabletop for multiplayer card games
python-tcod - A high-performance Python port of libtcod. Includes the libtcodpy module for backwards compatibility with older projects.
Cockatrice - A cross-platform virtual tabletop for multiplayer card games
SDL - Simple Directmedia Layer
electionguard-cpp - A C++ implementation of ElectionGuard specification focused on encryption components.
bracket-lib - The Roguelike Toolkit (RLTK), implemented for Rust.
electionguard-ui - ElectionGuard monorepo in React & Typescript consisting of an api client, components, and apps to demonstrate examples of user interface for both voters and election staff.
BrogueCE - Brogue: Community Edition - a community-lead fork of the much-loved minimalist roguelike game
Untitled-Roguelike-Framework - Flexible framework for building turn-based, tile-based games in Unity.
notcurses - blingful character graphics/TUI library. definitely not curses.
ninja - a small build system with a focus on speed
{fmt} - A modern formatting library