Reincarnation Posted February 28 Posted February 28 (edited) Hello All! I wanted to show off a project I was previously working on a couple hours a week but now taking it up a couple of notches - the reality is, I'm pushing for a full blown release and going all in with several thousand $ saved up for marketing. Like many of us here, I grew up on McCodes-era text-based mafia games. I love the core gameplay loops (Crimes, Gym, Jail, Hospital, PvP etc), but returning to them in 2026, the UX obviously feels incredibly dated-constant page reloads, messy UI and clunky interactions. That's expected, go back to it's release date - you're going to get that unless you build heavily on it or start scratch. That's the route I took, a FRESH START. My goal was to still capture the absolute essence of what made McCodes V2+ so addictive, but completely rewrite the whole underlying architecture so it can eventually feel and compete as a 2026/2027 Modern Browser game(for now or atleast the near future). Why for now? Because I intend by the end of this year to scale it into a full blown Mobile MMO RPG but with connective database to the Web Game - so they stay as one, that is something I need to learn even more about though and maybe even bring someone onboard. Coding Methods & Architecture - Zero Page Reloads (SPA feel) - Instead of header and footer.php, every action is wrapped. The UI is a single dashboard. Clicking a feature like Crime or Casino triggers a Vanilla JS fetch request that loads a PHP-rendered view into a centralized center modal. - No more if($_GET['action'] == 'do_crime') spaghetti. Actions are sent to AJAX POST to sandboxed action scripts. - Implemented Live DOM Traversal (To get .livecash/.liveenergy). - Modern Backend PHP 8+, fully PDO prepared statements. Strictly typed functions and robust CSRF token verification. - Session-State Tracking in Casino(Blackjack). UI & Visuals Currently all CSS. I'm on the search for a graphics designer to bring this to life. I'm open to pay as you go method with said designer but bringing one onboard would be more ideal. Fully Installed Features - Crimes, Gym, Fight Club, Upgradable Mansion, City Territories(HUGE for my game concept), Bank, Careers, Casino, Emergency & Comms, Inventory and a real live game chat. Features to come - I would be here all day. But the biggest feature to come is a 2.5D map system to properly integrate City Territories on a new level - with territorial buildings, opening times for when that building becomes an occupiable state and the rewards/buffs that building provides. (I have pulled this concept out of Sea of Conquest & Mafia City by Phantix and combined them). - Mathematical scaling of all features so they're game release ready - that's last. - Full cinematic look to the game - this eventually will not be classed as text based, but right now that's how we build. I'd love to hear all your thoughts so far especially from old school McCodes devs. If you have any suggestions on features, any Graphic's Designers you can recommend or even your thoughts on difficulty producing a 2.5D Real-time Map do provide your in-put, it is greatly appreciated. You can visit my game project testing domain at: https://rs-gaming.com // The plan is to have this project at Lite release level by April 2026. However, large additions such as the 2.5D map will come further along. 🙂 Preview 1. Fully CSS. Only grid panels as PNG's. Edited Wednesday at 01:19 PM by Reincarnation 1 Quote
Reincarnation Posted March 2 Author Posted March 2 (edited) Would really love some feed back guys. UPDATE: - Full Mobile Compatibility. - Began to create the first live game in Casino, 3 online players can be seated at the Blackjack table - Live Blackjack with Perfect Pairs and 21+3 side bets and viewable pay-table. Also animated using "@keyframes" to deal cards and reveal like a real time online casino would. - Moulded login/register to the same page with solid luxury CSS to match the games UI. 🙂 Edited March 2 by Reincarnation 1 Quote
Reincarnation Posted March 3 Author Posted March 3 Blackjack updated and Roulette added with @keyframes animations. Quote
gamble Posted March 3 Posted March 3 Looking good from the screenshots! Keep up the good work! 1 Quote
Reincarnation Posted March 4 Author Posted March 4 (edited) 10 hours ago, gamble said: Looking good from the screenshots! Keep up the good work! Appreciate the feedback, glad you like what you see. It's been fun recreating some of the common features, e.g Gym. Finding new ways to elevate it and bring it to life than just pressing a button and getting an instant result - that said I finished my Gym system yesterday. Every upgrade is +1 to rank and has a timer with the option to speed up. I'm trying to build timer based assets within the game with strict cash economics too - everything feels it has a value worth grinding. This way, when people log off, their account is actively progressing and they can log-in & claim whatever stat/reward and progress on. Screen shot below! Update: Login/Register is now fully completed. Glassmorphia embedded into the Login/Register panel of which is filtered into one page. We'll be moving forward permanently with the name The Fifth Family. I love the name, it's unique and well tied into the game as the Gangs/Clan system is called Families. What do you guys think? Slots now added, bringing our Casino portfolio to the 3 most popular games. Intend to develop this into a 5 wheel slot, for now though - this works. Edited March 4 by Reincarnation Quote
Reincarnation Posted March 8 Author Posted March 8 Vigilantes system built. Bloodline Perks added (Basically skill points obtained from leveling up = spendable in a tree). Quote
rockwood Posted March 10 Posted March 10 (edited) Modern backend built with PHP 8+, using PDO prepared statements throughout. The codebase uses strictly typed functions and robust CSRF token verification for improved security. Could you show an example of how this is implemented? Overall, you’ve done a great job—this looks like excellent work. For my stack, I’m using Node.js + Prisma + Express + PostgreSQL + React (with the Fetch API) + Tailwind CSS. Edited March 10 by rockwood Quote
Reincarnation Posted March 11 Author Posted March 11 21 hours ago, rockwood said: Modern backend built with PHP 8+, using PDO prepared statements throughout. The codebase uses strictly typed functions and robust CSRF token verification for improved security. Could you show an example of how this is implemented? Overall, you’ve done a great job—this looks like excellent work. For my stack, I’m using Node.js + Prisma + Express + PostgreSQL + React (with the Fetch API) + Tailwind CSS. Thanks man, appreciate the kind words — and solid stack on your end, Node + Prisma + React is clean. To answer your question, here's a quick breakdown of how things are wired up on the backend: I use PDO Prepared Statements — every single database call goes through prepared statements with bound parameters. There are zero raw queries or string-concatenated SQL anywhere in the codebase. Example: $stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?"); $stmt->execute([$userId]); Even admin panel operations (bulk edits, deletions, store management, etc.) all go through the same pattern. No exceptions. CSRF Protection — every form and every AJAX action includes a per-session CSRF token. The token is validated server-side before any state-changing operation is processed. If the token doesn't match, the request gets rejected outright. Admin Role Gating — the staff panel uses a role-level system where each admin page calls a require_admin_role($level) check at the top. If the logged-in user doesn't meet the required permission level, they get bounced. No client-side hiding — it's a hard server-side block. Output Escaping — all user-facing output runs through htmlspecialchars() to prevent stored/reflected XSS. That said, I'll be transparent — there's still security work on my roadmap that I haven't gotten to yet: Rate limiting on login attempts and sensitive actions (anti-brute force) Account lockout after X failed login attempts Session hardening — forcing regeneration on privilege changes, tighter cookie flags (HttpOnly, Secure, SameSite) Content Security Policy headers — locking down what scripts/resources the browser is allowed to load Two-factor authentication for player accounts HTTPS enforcement at the application level (currently handled at server config but not hardcoded in app logic) Input length/type validation — I sanitize and escape, but I don't yet have strict server-side validation layers checking types, lengths, and formats before data even hits the query Logging & alerting — no intrusion detection or suspicious activity logging yet The core injection and XSS vectors are locked down, but the hardening layer on top of that is still a work in progress. It's a solo project so I'm building features first and then circling back for the security polish pass before any kind of public launch. Hope I gave you enough detail! Cheers for checking it out - I am getting close to project finish in terms of features(likely 2 days), then it's working through the security phase for all of the above. If you have checked it out directly recently I did migrate to a new domain with my own dedicated server through Hetzner. I migrated from shared hosting + cPanel to a dedicated with Nebuntu 22.04 + Cloud Panel and only 3 features broke, took an hour to fix and was seamless(thank goodness). New home is https://thefifthfamily.com 1 Quote
rockwood Posted March 12 Posted March 12 (edited) <?php declare(strict_types=1); /** * --------------------------------------------------------- * Simple PHP MVC Example (Single File) * --------------------------------------------------------- * This file demonstrates a basic MVC structure using: * * Model → Handles database logic * Controller → Handles request logic * View → Handles presentation * * Documentation follows PHPDoc conventions aligned with * PSR coding standards (PSR-12 style). * * Requirements: * - PHP 8+ * - MySQL database with table `users` * * Example URL: * http://localhost/index.php?id=1 * --------------------------------------------------------- */ /** * --------------------------------------------------------- * MODEL * --------------------------------------------------------- */ /** * Class UserModel * * Responsible for interacting with the database * for user related operations. */ class UserModel { /** * PDO database connection instance. * * @var PDO */ private PDO $pdo; /** * Constructor. * * @param PDO $pdo Database connection instance */ public function __construct(PDO $pdo) { $this->pdo = $pdo; } /** * Retrieve user by ID. * * @param int $id User ID * * @return array|null Returns user data or blank array */ public function getUserById(int $id): ?array { $stmt = $this->pdo->prepare( "SELECT * FROM users WHERE id = :id" ); $stmt->execute([ 'id' => $id ]); $user = $stmt->fetch(PDO::FETCH_ASSOC); return $user ?: []; } } /** * --------------------------------------------------------- * CONTROLLER * --------------------------------------------------------- */ /** * Class UserController * * Handles user related requests and communicates * between the model and the view. */ class UserController { /** * User model instance. * * @var UserModel */ private UserModel $userModel; /** * Constructor. * * @param UserModel $userModel User model dependency */ public function __construct(UserModel $userModel) { $this->userModel = $userModel; } /** * Show user profile. * * @param int $id User ID * * @return void */ public function showUser(int $id): void { $user = $this->userModel->getUserById($id); view_user($user); } } /** * --------------------------------------------------------- * VIEW * --------------------------------------------------------- */ /** * Render user view. * * @param array|null $user User data * * @return void */ function view_user(?array $user): void { ?> <!DOCTYPE html> <html> <head> <title>User Profile</title> <meta charset="UTF-8"> </head> <body> <?php if ($user): ?> <h1><?= htmlspecialchars($user['name']) ?></h1> <p> Email: <?= htmlspecialchars($user['email']) ?> </p> <?php else: ?> <p>User not found.</p> <?php endif; ?> </body> </html> <?php } /** * --------------------------------------------------------- * APPLICATION ENTRY POINT * --------------------------------------------------------- */ /** * Create database connection. */ $pdo = new PDO( "mysql:host=localhost;dbname=test;charset=utf8mb4", "root", "", [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ] ); /** * Initialize MVC components. */ $userModel = new UserModel($pdo); $userController = new UserController($userModel); /** * Get user ID from request. */ $userId = isset($_GET['id']) ? (int) $_GET['id'] : 0; /** * Handle request. */ $userController->showUser($userId); I love this way Edited March 12 by rockwood Quote
JamesC Posted March 13 Posted March 13 Looks really good, runs smooth. From a creative standpoint, it would be really worth giving thought to the story of the game and making sure its very unique and memorable. For example when you login it could have a small explanation of who you are, where you are, what you are trying to do. Just so you are not met with a bunch of generic mafia related game links. Just a bit more character. And really think of cool game mechanic hooks, you've already mentioned some. Would be a shame for you to put so much time into making a game that functions like this to just go down the same mafia genre with little variation. Think of depth. Try and absorb the user into the world. Making each page feel like you are really in that location. example, when you login make it feel like you are safe at home, deciding where you want to go and what you want to do. 1 Quote
Reincarnation Posted March 15 Author Posted March 15 On 3/13/2026 at 8:38 AM, JamesC said: Looks really good, runs smooth. From a creative standpoint, it would be really worth giving thought to the story of the game and making sure its very unique and memorable. For example when you login it could have a small explanation of who you are, where you are, what you are trying to do. Just so you are not met with a bunch of generic mafia related game links. Just a bit more character. And really think of cool game mechanic hooks, you've already mentioned some. Would be a shame for you to put so much time into making a game that functions like this to just go down the same mafia genre with little variation. Think of depth. Try and absorb the user into the world. Making each page feel like you are really in that location. example, when you login make it feel like you are safe at home, deciding where you want to go and what you want to do. This has been my main area to begin improving several days ago, a lot of that will come with the tutorial also when I get to those final stages. You’re spot on, sometimes when you code feature after feature you lose track and thought of keep it well connected and story driven. I took a step back and began correcting that. Did you checkout the new version? (www.thefifthfamily.com) You’ll likely see a lot more improvement from the old link to the new, even from the get go on the login page, you’re selecting male or female but they are graphical character selections immediately setting the standard - thats what I’m building off - tons of work to do still but it is all starting to link & wire up together. I’ve just finished the crimes system now. They all have a mastery that ends with a “Final Boss” feature that you have to defeat. You have to max your mastery for the said city you’re in and defeat its boss to progress onto the next. I just need to map a story into it all for all 6 citys. But yes tons of additions and adaptations on the new website. Should definitely check it out! Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.