DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI
Find a file
Игорь Федосеев 5dedaf459f fix: restore fortune AI and add model setup
Restore native inference, card-bound readings and paged dialogue.

Provide manual, checksum-verified model setup instead of Git LFS so
source checkouts work without uploading multi-gigabyte weights. The
game stays offline; complete release archives still bundle the model.
2026-10-31 00:37:36 +03:00
ai fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
assets feat: add bowling hall and unified visitor animations 2026-10-30 18:39:59 +03:00
backups chore: track all project backups, docs, runtime assets, and graphify output 2026-09-30 21:27:18 +03:00
bin fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
build fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
dist fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
docs fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
graphify-out chore: track all project backups, docs, runtime assets, and graphify output 2026-09-30 21:27:18 +03:00
runtime feat: implement native billiards, scratch tickets, first-person dice, and city wake scene 2026-10-16 12:37:40 +03:00
saves_legacy Add Assembler Casino project with 2.5D graphics and tools 2026-09-24 19:31:05 +03:00
src_graphics fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
tools fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
.gitattributes fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
.gitignore fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
AGENTS.md fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
build.bat fix(build): add fallback detection for MSVC BuildTools alongside VS Community in build.bat 2026-10-21 17:25:12 +03:00
casino3d.inc feat: rework artifacts and tower relics 2026-10-30 23:22:19 +03:00
casino3d_data.inc Add Assembler Casino project with 2.5D graphics and tools 2026-09-24 19:31:05 +03:00
download_fortune_model.bat fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
font8x8.inc fix(ui,audio): eliminate cyan color bug, restore authentic IBM VGA Cyrillic font, implement native 2.5D Skill Check 2026-09-30 21:17:07 +03:00
LICENSE Initial commit 2026-09-24 17:40:47 +03:00
poker.asm feat: rework artifacts and tower relics 2026-10-30 23:22:19 +03:00
poker.exe fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
poker.obj fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00
poker.wap feat: implement upper lounge, manual stairs, cabaret, and casino terminals 2026-10-18 21:36:12 +03:00
README.md fix: restore fortune AI and add model setup 2026-10-31 00:37:36 +03:00

ASSEMBLER CASINO (KAZIK) 🎰

A retro casino gaming suite powered by a high-performance pure x86 assembly (MASM32) engine featuring an interactive 2.5D retro Raycaster 3D Hall (DOOM / Wolfenstein style) and a catalog of classic and underground gambling games.

The game runtime is assembly-only. This repository has one game core, built from MASM sources; no C/C++ game port or non-assembly fallback is supported. Native Linux/macOS versions are not available. Any future native platform port must also use assembly. Python scripts are offline development tools, and the existing C# launcher/installer are separate packaging utilities.

First setup: offline fortune AI

After cloning or copying this repository, double-click download_fortune_model.bat in the repository root. It downloads about 2.5 GB into ai/models/, resumes interrupted downloads where supported, tries a backup source, and verifies the exact size and SHA-256 before installation. Keep at least 3 GB free. Windows PowerShell and curl.exe are required (included with current Windows 10/11); Python, Git LFS and administrator access are not required.

Then launch dist/Assembler Casino.exe or poker.exe. Model setup is a separate, manual step; the game never downloads anything and works offline afterward. Running setup again verifies existing weights without downloading them again. Complete offline release ZIPs already contain the model and need no download. See Fortune AI for details and hardware notes.

Native Entrance And Character Scenes

The graphical startup now fades from Eblan Games into a first-person opening: eyes opening beneath a cloudy rainy sky, smoking in an alley, discarding the cigarette, walking and turning through a separate city map, then meeting the guards and choosing a local profile before entering the walkable hall. The sequence resets on every launch; the intro advances automatically. Sidorovich operates the native card-back shop. New character sheets contain 32 guard poses and 24 merchant poses, with separate actions rather than a single repeated idle animation. Dealer-hand poses are synchronized with native poker/blackjack card movement.

New street, guards, merchant, furniture and table art use a detailed retro pixel-art direction and nearest-neighbor sampling, not the rejected realistic palace facade. Converting every legacy asset and terminal game is still in progress; multiplayer card tables are not implemented by adding decorative opponents. See Graphical Scenes for the implemented scope, asset pipeline and remaining gameplay work.

Verify the production ASM logic and framebuffer snapshots with:

tools/tests/test_casino_actions.ps1
python tools/tests/check_arrival_frames.py
python tools/tests/check_card_table_frames.py

🏛️ Architecture Overview

The repository contains one assembly game runtime and separate development and packaging tools:

MASM sources --> ml.exe / link.exe --> poker.exe
assets/ ----------------------------> native game data
tools/ -----------------------------> offline asset generation and tests
build/ / dist/ ---------------------> existing launcher and installer
  1. MASM32 Core Game Engine (Root)

    • poker.asm: Main game binary (~8,500+ lines of hand-crafted x86 assembly). Contains game logic, cheat engine, socket networking, profile save system, and sound triggers.
    • casino3d.inc / casino3d_data.inc: Software 2.5D Raycaster engine rendering a 32×32 grand casino hall at 640×480 with DDA wall casting, depth-sorted sprite objects, and interactive tables.
    • font8x8.inc: CP1251 1-bit monochrome 8×8 bitmap font table for high-speed HUD rendering directly to the Win32 GDI frame buffer.
  2. Desktop Distribution & Launcher (build/ & dist/)

    • build/: C# source code for the launcher (AssemblerCasinoLauncher.cs), setup GUI (PokerGameSetupGui.cs), and uninstaller.
    • dist/: Ready-to-run compiled desktop executables (Assembler Casino.exe, Uninstall Assembler Casino.exe).
  3. Offline Development Tooling (tools/)

    • tools/previews/: Terminal ANSI animation players (preview_intro.py, preview_hakari.py, preview_dbd_hook.py) and 3D preview runner.
    • tools/generators/: Texture pack scripts (build_graphics_assets.py), math table generators (generate_math_and_map.py), font rasterizer (generate_font.py).
    • tools/tests/: Software raycaster simulator (simulate_render.py), release integrity checks (release_smoke_check.ps1), achievement popup modal (achievement_popup.bat).
  4. Assets & Documentation (assets/, docs/, backups/)

    • assets/: High-resolution textures, sprites, audio samples (.wav), and ANSI cinematics (.ans).
    • docs/: Design specifications, cheat sheet, networking guides, and engine render previews.
    • backups/: Historical milestones and archived releases.

📁 Repository Directory Structure

├── poker.asm                    # Primary MASM32 assembly source
├── casino3d.inc                 # 2.5D retro 3D raycaster engine implementation
├── casino3d_data.inc            # 3D engine math tables (sin/cos) & casino hall grid
├── font8x8.inc                  # 8x8 CP1251 bitmap font data
├── poker.wap                    # Pelles C / Windows project definition
├── build.bat                    # One-click build script for MASM32 core
├── poker.exe                    # Compiled game binary
├── AGENTS.md                    # Engineering guidelines and agent instructions
├── README.md                    # Project documentation (this file)
├── LICENSE                      # Project license
├── .gitignore                   # Git ignore patterns
│
├── assets/                      # Game assets
│   ├── animations/              # ANSI animations (casino_intro.ans, hakari_dance.ans, dbd_hook.ans)
│   ├── audio/                   # Sound effects (.wav) for cards, roulette, coins, win/loss
│   ├── data/                    # Dealer dialogues and text tables (CP1251)
│   ├── icons/                   # Game icon assets (.ico, .png)
│   ├── music/                   # Background tracks
│   ├── sprites/                 # Source sprite sheets & cabaret animations
│   └── textures/                # Packed 128x128 BGRA texture binaries (casino3d-hd.bin)
│
├── backups/                     # Preserved backups and legacy archives
│
├── build/                       # Launcher and setup source code (C# .NET)
│   ├── AssemblerCasinoLauncher.cs
│   ├── PokerGameSetupGui.cs
│   └── UninstallAssemblerCasino.cs
│
├── dist/                        # Compiled desktop distribution binaries
│   ├── Assembler Casino.exe
│   └── Uninstall Assembler Casino.exe
│
├── docs/                        # Project documentation, guides, and plans
│   ├── intro_code_draft.txt     # Opening sequence drafts
│   ├── render_view.png          # Simulated frame render of the 3D casino hall
│   ├── ИДЕИ.txt                 # Game ideas and development backlog
│   ├── ЧИТКОДЫ.txt              # Complete list of cheat codes
│   └── *.txt                    # Release notes, security guidelines, networking
│
└── tools/                       # Developer tooling & offline asset pipeline
    ├── README.md                # Documentation for tools
    ├── previews/                # Animation & 3D preview scripts (.py, .bat)
    ├── generators/              # Asset packers, math & font generators (.py)
    └── tests/                   # Software render simulator & test scripts (.py, .ps1, .bat)

🛠️ Build Instructions

1. MASM32 Game Binary (poker.exe)

Prerequisites: MASM32 SDK (ml.exe, link.exe) installed in D:\MASM32\masm32, C:\masm32, or Visual Studio MSVC BuildTools.

Simply run:

build.bat

This will assemble poker.asm with MASM, link against kernel32, winmm, user32, ws2_32, gdi32, and produce poker.exe.

2. Running Previews and Simulators

  • Hakari Jackpot Dance Preview:
    tools\previews\preview_hakari.bat
    
  • Casino Intro Animation Preview:
    tools\previews\preview_intro.bat
    
  • 3D Engine Software Simulation:
    python tools/tests/simulate_render.py
    
    Generates docs/render_view.png showing the 3D raycaster view with sprites.

🔤 Character Encoding Standard

  • Game source & strings (poker.asm, assets/data/dealer_phrases.txt): CP1251 (Windows-1251). Never save as UTF-8.
  • ANSI animations (.ans): CP1251 encoding with ANSI escape codes and form feed (\f, 0x0C) frame delimiters. Preview runners execute chcp 65001 before playback.

🎮 Games & Features

# Game Description
1 21 / Blackjack Classic card game against the dealer with hit/stand mechanics.
2 Poker Texas Hold'em with AI opponents, betting rounds, and pot calculations.
3 CloverPit 5×3 video slots with custom bonus features and payouts.
4 Russian Roulette High-stakes survival with revolver chamber simulation.
5 Skulls & Cups Thimblerig shell game testing perception and luck.
6 Coin Flip Double or nothing coin toss.
7 Dice / Craps Classic dice rolling wagering.
8 Roulette European roulette wheel with single and range bets.
9 Classic Slots 3-reel 777 fruit machine.
10 Durak Traditional Russian card game with trump cards and defense logic.
11 Training Practice arena with infinite balance.
12 Observer (AI vs AI) Watch autonomous agents play against each other.
3D Grand Casino Hall Real-time 2.5D raycaster environment to explore and walk up to tables.