All Projects → XenonLab-Studio → TerraCraft

XenonLab-Studio / TerraCraft

Licence: GPL-3.0 license
Voxel Engine written in Python 3 + Pyglet.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to TerraCraft

Slimefun-Standalone
A standalone Game that is based on my Plugin "Slimefun 4". Maybe discontinued, I don't know... haven't worked on it for ages.
Stars: ✭ 23 (-53.06%)
Mutual labels:  indiegame, sandbox-game
DreamBlocks
Sandbox Game 2D written in Java
Stars: ✭ 17 (-65.31%)
Mutual labels:  indiegame, sandbox-game
raylib-py
A Python binding for the great C library raylib.
Stars: ✭ 147 (+200%)
Mutual labels:  pygame, pyglet
Arcade-CS-Games
Jeux pour l'arcade des CS Games
Stars: ✭ 18 (-63.27%)
Mutual labels:  pygame
Blocks
A 3D Voxel Sandbox written in C
Stars: ✭ 22 (-55.1%)
Mutual labels:  voxel-engine
space-invaders
👾Python clone with a modern twist
Stars: ✭ 209 (+326.53%)
Mutual labels:  pygame
PygameWidgets
A module for use with Pygame. Includes fully customisable buttons, textboxes, sliders and many more, as well as the ability to create and run animations on these widgets.
Stars: ✭ 34 (-30.61%)
Mutual labels:  pygame
mapserver mod
Complementary mod for the minetest mapserver
Stars: ✭ 15 (-69.39%)
Mutual labels:  minetest
vx bevy
🧊 Voxel engine prototype made with the bevy game engine. Serves as a playground for experimenting with voxels, terrain generation, and bevy.
Stars: ✭ 79 (+61.22%)
Mutual labels:  voxel-engine
luma.emulator
Provides a series of pseudo-display devices which allow the luma.core components to be used without running a physical device.
Stars: ✭ 32 (-34.69%)
Mutual labels:  pygame
Chip8Python
A Super Chip 8 emulator written in Python
Stars: ✭ 65 (+32.65%)
Mutual labels:  pygame
VoxelEngine
Custom voxel engine written in C++ and OpenGL
Stars: ✭ 44 (-10.2%)
Mutual labels:  voxel-engine
advanced npc
Advanced NPC for Minetest, using mobs_redo API
Stars: ✭ 16 (-67.35%)
Mutual labels:  minetest
Mage
Mage is a 3D Game Engine, built on top of THREE.js. It features Unity-like scripting, AMMO.js powered physics workers, an Infernojs powered UI and a clean API. Under (very) active development.
Stars: ✭ 76 (+55.1%)
Mutual labels:  indiegame
The-PyOS-Project
The PyOS project is an orbital mechanics simulator, entirely coded in Python, which uses the panda3D engine. The acronym PyOS stands for "Python orbit simulator". Feedback is appreciated !
Stars: ✭ 52 (+6.12%)
Mutual labels:  sandbox-game
libTech
Game engine inspired by id Tech and Source written in C#
Stars: ✭ 42 (-14.29%)
Mutual labels:  sandbox-game
voxel knights
WIP Medival Fantasy Open World PvE game
Stars: ✭ 14 (-71.43%)
Mutual labels:  minetest
dragonfireclient
Dragonfireclient is an utility client for the Voxelengine minetest (http://minetest.net/). The client was created by Elias Fleckenstein and is inspired by the Minecraft clients Liquid Bounce and Impact. Discord: https://discord.gg/kab99uu for more information.
Stars: ✭ 40 (-18.37%)
Mutual labels:  minetest
AlphaZero-Renju
No description or website provided.
Stars: ✭ 17 (-65.31%)
Mutual labels:  pygame
minetest modding book
MIGRATED TO GITLAB: https://gitlab.com/rubenwardy/minetest_modding_book
Stars: ✭ 60 (+22.45%)
Mutual labels:  minetest



made-with-python Maintenance GPLv3 license


Goals and Vision

TerraCraft is a small SandBox game engine written in Python 3 + Pyglet.

The objectives of this project are as follows:

  • The intention is to create a small complete game focused exclusively on creative mode.

  • The project must remain simple, well documented (code and wiki) and easy to modify / improve for students and hobbyists. Keeping the code ordered is very important.

  • I would like to see this project turn into an educational tool. Kids love Minecraft and Python is a great first language.

  • This is a good opportunity to entertain children on programming.

  • We are writing a new wiki to help users collaborate on the project in an easy and productive way. If you have questions, suggestions or want to help us, please write to [email protected] or open a discussion here on Github in the "Issues" section.

The code should be well commented and more easily configurable. It should be easy to make some simple changes and see the results quickly.

Thank you all.

🎯 Goals to achieve:


  • Keep the code ordered, and well commented! realize documentation that is a step by step process for the long-term development of the project. Keep the project easy to understand and simple to change. The wiki is undergoing constant improvement, and will always be updated and improved over time.
  • 💾 Project optimization and reorganization.
  • 🎃 Create dedicated and exclusive textures for TerraCraft.
  • 🎮 A new inventory system, which can be recalled with the "I" key and a configurable hotbar (from a minimum of 8 to a maximum of 15 frames). The current inventory system allows you to select blocks using the keyboard keys 1 to 0, without displaying the active block. Removing the limit of only 10 blocks is one of the priorities of the project.
  • 👾 Improvement of the map generation system, with the possibility of generating the terrain with the Perlin algorithm or a completely flat map. The choice can be made via the game menu when the New World button is activated.
  • 💡 Making a menu at the start of the game, similar to that of Minecraft but with a personal and easily customizable gui.
  • 🎼 Add sound effects and music that can be adjusted and deactivated in game (and from the options menu).

How to Run

sudo pip3 install pyglet
git clone https://github.com/XenonLab-Studio/TerraCraft.git
cd TerraCraft
python3 main.py

Mac

On Mac OS X, you may have an issue with running Pyglet in 64-bit mode. Try running Python in 32-bit mode first:

arch -i386 python3 main.py

If that doesn't work, set Python to run in 32-bit mode by default:

defaults write com.apple.versioner.python Prefer-32-Bit -bool yes 

This assumes you are using the OS X default Python. Works on Lion 10.7 with the default Python 3.5+, and may work on other versions too. Please raise an issue if not.

See the wiki for this project to install Python, and other tips.

Controls:

Moving

  • W: forward
  • S: back
  • A: strafe left
  • D: strafe right
  • Mouse: look around
  • Space: jump + vertical flying up
  • Tab: toggle flying mode
  • Left-Shift: vertical flying down
  • Left-Ctrl: run
  • ESC: release mouse, then close window

Building

  • Selecting type of block to create:
    • 1: Dirt
    • 2: Dirt_with_Grass
    • 3: Sand
    • 4: Snow
    • 5: Cobblestone
    • 6: Brick_Cobblestone
    • 7: Brick
    • 8: Tree
    • 9: Leaves
    • 0: Wooden_Planks
    • Mouse left-click: remove block
    • Mouse right-click: create block

Warning! By pressing F12, the previous screenshot is automatically overwritten.

Quitting

  • ESC: release mouse, then close window

License

Copyright (C) 2013 Michael Fogleman
Copyright (C) 2018-2019 Stefano Peris

eMail: [email protected]
Github repository: https://github.com/XenonLab-Studio/TerraCraft

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

This software is licensed under the GPL3 license.

Find a copy of the full license within this project (LICENSE).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].