Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

My Fantasy Console

A topic by agg1401 created 12 days ago Views: 98 Replies: 4
Viewing posts 1 to 4

Hi everyone,

I’m an indie developer from Turkey. Since I started making games with TIC-80, I’ve always dreamed of building my own fantasy console. I know it’s a tiring and ambitious task—perhaps even a "gamble"—but I believe creating the tool itself is as enjoyable as playing the games.

The project is called **Bee Console (BEC)**. I haven’t started coding the core engine yet; I am currently in the **design and planning phase**. Before I write the first line of code, I want to share my vision with you and get your honest feedback.

**🐝 The Vision**

Unlike other fantasy consoles that rely on Lua or general-purpose languages, Bee Console will feature its own custom DSL called **BECL (Bee Console Language)**.

- **Philosophy:** "One solution, no ambiguity." There will be no multiple ways to do the same thing.

- **Language Structure:** It combines the determinism of Assembly with the simplicity of BASIC. Initially, the syntax will be **Turkish-based** to keep the logic clear for our team, but it is designed to be easily localized to English later.

- **Target Audience:** Beginners who are intimidated by complex syntax, and retro enthusiasts who value clarity.


**🛠️ Technical Plan (Not Started Yet)**

I plan to build the engine using **Go** and the **Ebitengine** library.

- **Target Platforms:** Windows, Mac OS X, Web, Raspberry Pi, and AmigaOS.

- **Resolution:** 256x240

- **RAM:** 256 KB

- **Palette:** A custom 32-color palette designed for specific retro aesthetics (e.g., Night Blue for backgrounds, Peach Orange for warmth).


**💻 Example Syntax (BECL)**

Instead of cryptic parameter lists like *sprite(1, 10, 10, {1}, 1, 0, 0, 2, 2)*, BECL aims for natural readability:

**Basic Usage:**

```

baslat oda menu

spr($01, $02, $03), x: 160, y: 100

bitir oda menu

```

**Centering Feature:**

If you want to center the sprite automatically:

```

baslat oda menu

spr($01, $02, $03) x: merkez, y: 100

bitir oda menu

```

*(Note: `merkez` means "center" in Turkish. This shows how the language handles common tasks without complex math.)*

[hr]

**📅 Roadmap (Draft)**

To avoid burnout and maintain motivation, I plan to release small, functional milestones:

- **v0.10:** Go infrastructure, basic room initialization (`baslat/bitir`), and the `yaz` (write) command.

- **v0.20:** Boot system, input handling, and SFX room (F4).

- **v0.30:** `.bec` file format support and palette management.

- **v0.40:** Mouse input, Sprite Editor (F2), and the first official Windows build.

[hr]

**❓ Seeking Your Advice**

This project is a big gamble for me, but I am passionate about it. I’d love your thoughts on:

- **Syntax:** Does this "natural language" approach feel intuitive? Is the `x: merkez` shortcut a useful feature or too much magic?

- **Constraints:** Is 256KB RAM and a 32-color palette enough of a challenge for modern indie devs?

I value **transparency** over marketing. There is no product yet, just a dream and a plan. Your feedback will help shape this dream into reality.

(+1)

Writing a programming language based on Turkish instead of English is a bold choice!

A localized programming language, on the other hand, just sounds terrible. Microsoft Excel has one, and it’s one of those things that people love to hate about Excel. Given the choice, I’d rather program in Turkish. But that’s just my opinion.

Thank you for your kind words about my bold choice to code in Turkish. English language support will also be included in future versions. I believe that allowing people to create content and build things in their native language simplifies the process.

Moderator moved this topic to General Development
Moderator(+1)

(moved to the right category)

I thought you had deleted the topic, I was so scared.