Jump to content
View in the app

A better way to browse. Learn more.

ClassiCube Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

New server software development in progress

Hello ClassiCube

I think that this forum website is a good place to share with you my custom server software i'm recently working on. It's called ccraft2. Why ccraft2? The predecessor ccraft has failed and project got broken. This is because a year ago I was crazy about ai that can write code. Perhaps back then I used it improperly. Now with ccraft2, starting from scracth again I decided to write the code myself. I want to avoid vibe coding but I still use AI for some help.

For a few weeks or days (as I remember) I finally got it working and it's quite playable. On ClassiCube server list there is a server called ccraft Testing. I update and make releases (I forget to make releases on GitHub though), I update the server to test bugs and stuff.

Sadly I can't attach too much screenshots cause of file size limits.

Recently the development has paused because I tried to implement pseudoinfinite worlds which is rough and big update. So I decided to focus on smaller and simpler things such as adding more commands. So far the server supports chat, commands, multiple worlds and world saving. The nice update against griefers is when backup system was added, so admins can always revert to last map state before hell. Before this version, there was unrecoverable hell happening. Player called kerem overwritten whole village with mushrooms...

One of my nearest plans of the server is changing world file format to the old one. It already got changed once. The old one was just made of non-air block array where each block is 7 bytes. Each file, the normal and backup one, was ~2 MB. I wanted to change the file format so there is header and structure of block array is changed, and most important: to make world files smaller. In the header there is information how big the map should be. However the new file format got actually bigger than previous one: ~4 MB. Perhaps because air blocks were also saved.

image.pngI hope that from this pixelated mess i've made, (so i can attach at least one file), you can recognize the map of the ccraft Testing server. We can see spawn, main road, and some crazy sponge built by Player2999. And some cozy houses and trees. There is no guarantee that these buildings will last forever since this is just Testing server.

We have some basic commands, these only for admins and these for everyone. Let me know what commands to add.

Here's link of the repository: https://github.com/dawidg81/ccraft2

Any help is appreciated. Thank you. I may send more about ccraft2 soon.

Though the game is playable and you can do basic things, there is still a lot to do. Back then (somewhere one year ago) I wanted to do the whole working project all at once and got frustrated when AI couldn't do it or did it with a lot of mistakes. I slowly understood that it doesn't awlays work like that. We focus on small things and iterate. ccraft2 is one of not very much projects I've made and are actually working and I haven't lost motivation in them. There's also working minesweeper game (https://github.com/dawidg81/minesweeper) that is also working. I'm proud of these projects. These are (as far as I remember the only) projects that I've mostly written myself, not fully vibe coded, but I used help of AI. AI is good if used properly.

I guess that's all for now, thank you. See you later, best regards.

dawidg81

Featured Replies

i reccomend making a classicube server using ZERO ai to start off, in a easier language to comperehend than C++, something like Python, JS, et cetera.

i've made several classicube servers over the years, about 5 to 6 years ago I made cla55ic, which was a extremely simple classicube server that supported creating worlds, and that's about it

about 3-4 years ago I made cla66ic which was a way more complicated and convoluted server I wrote using Deno and writing the whole protocol myself. now I'm working on Classi, which is a even more complicated and more convoluted general purpose server. it'll be used as a replacement for MCGalaxy on the cope's City server and currently runs the cope's Freebuild server.

for example, you mentioned psudeoinfnite worlds, i wouldn't reccomend working on that at all to start off. try to limit your AI usage to as much as you can, ask it only questions that you'd ask google. don't just say "Fix my code why not work", ask for example "It seems like <this line> is returning false, why is this happening? Inspect my codebase". actually debug and figure out what you're writing. you should actually be working on:
1. Moderation of any kind
2. Plugins in a language of your choice (Lua, Python, et cetera)
3. BlockDB
4. High performance database for users, user bans and whatnot else you need to store.

working on features that are extremely complicated like that will lead to you asking everything about the topic to AI, and in turn learning nothing yourself

sophie, also known as cope and previously lukeacat.

contacts & more at sad.ovh

IRC at irc.esper.net @sophie

READ THE RULES BEFORE YOU POST

Create an account or sign in to comment

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.