DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI DEPAI
Find a file
2026-10-25 16:43:43 +03:00
ai feat: implement offline neural fortune teller and native tarot divination 2026-10-21 13:53:06 +03:00
assets fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
backups chore: track all project backups, docs, runtime assets, and graphify output 2026-09-30 21:27:18 +03:00
bin fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
build fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
dist fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
docs fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +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(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
tools fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
.gitattributes Develop assembly-only casino scenes and native games 2026-10-08 22:39:19 +03:00
.gitignore feat: implement native darts mini-game, AI observer mode, and fortune session assets 2026-10-24 22:10:25 +03:00
AGENTS.md feat: implement offline neural fortune teller and native tarot divination 2026-10-21 13:53:06 +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(audio): implement interactive 3D jukebox (jackbox) and background music playback 2026-10-25 15:15:02 +03:00
casino3d_data.inc Add Assembler Casino project with 2.5D graphics and tools 2026-09-24 19:31:05 +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(tower): implement 3D Hell Tower mode and clean legacy console code 2026-10-15 19:49:50 +03:00
poker.exe fix(jukebox): make cabinet solid rectangular with zero gaps, relocate to East wall beside billiards 2026-10-25 16:43:43 +03:00
poker.obj feat(audio): implement interactive 3D jukebox (jackbox) and background music playback 2026-10-25 15:15:02 +03:00
poker.wap feat: implement upper lounge, manual stairs, cabaret, and casino terminals 2026-10-18 21:36:12 +03:00
README.md Develop assembly-only casino scenes and native games 2026-10-08 22:39:19 +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.

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.