COWMODSКаталог модов

Code of Copper

Programmable Copper Golems. Fully text-based programming language in a vanilla datapack.

Автор: wulfian2,7 тыс.51обновлён 21 июл. 2024 г.
ПриключенияТехнологииГенерация мира

Описание

Logo

Code of Copper

Code of Copper is a lore heavy, and technically advanced Datapack. Adding a programmable Copper Golem into the game.

Throughout the world, different structures will generate, containing lore, and examples of programs that the Copper Golem can run. Programs can be written into a book, and then given to the Golem, by right clicking it with the book.

Right-clicking the Golem with an empty hand will execute it's current program.

While we recommend playing through the pack, as an addition to your world, and slowly discovering the language and features over time, if you would like a quick demo of the pack, you can use /place template bot:demo to place our demo structure.

Code of Copper is a runtime for GolemScript, the programming language used to program the Golems.

A datapack by Moxvallix, Gears and Wulfian. Enjoy!
Explore the docs »
Report Bug

Requirements

  • This datapack will only work in versions 1.20.2 and higher
  • Make sure to remember to download and install the resource pack
  • This datapack will not work without the following datapack libraries:

Installation

To install the datapack, first download the latest release from Modrinth.
You will also need GolemScript, Moxlib, and Regex.

Put these in the datapacks folder of your world. For more information, see the Minecraft wiki.

When you install the datapack, you must leave and rejoin the world (or restart the server) for all effects to properly take place.

Obtaining a Copper Golem

Golems are found in airships, which generate naturally throughout your world when you have the datapack installed. Make sure to keep your render distance up, they spawn around 200 blocks in the air!

Looking for shadows on the ground is a great way to locate airships.
Each airship contains one copper golem, alongside three example programs to help you get started with GolemScript.

If you would like to follow along with the datapack and learn the language as you go, stop reading here.

Getting started with GolemScript

GolemScript is written in Minecraft books, which are applied to the golem to give it a program.

To learn more about Code of Copper's features, see Code of Copper documentation. To learn the language, see the GolemScript documentation.

License

This project is distributed under the GPL-3.0 License. See LICENSE.md for more information.

Discord Server

You can join our discord server here.

Oxidisation and progression

After a certain number of instruction executions, the golem will begin to oxidise.

Interacting with the golem while holding an axe removes the rust.

If the golem is fully oxidised, it will not run anymore, but upon scraping it with an axe you will find example programs that explain the language of GolemScript.

This process can be avoided however, by waxing the golem. As with anything copper, you can also scrape off the wax.

Галерея

Code of CopperCode of Copper (v0.3.0 Update)Made by Moxvallix, Gears and WulfianExample Program

Последние версии

Все версии →
release

Code of Copper v0.3.4

0.3.4
21 июл. 2024 г.804Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3datapack
Скачать
Что нового
## [0.3.4] - 2024-07-21 Fixed some bugs ### Changed - Updated the `place_blocks.glm` example program, with new syntax. - Updated the resource pack such that the golem now faces direction of travel (positive X). ### Fixed - Place no longer duplicates blocks when there's only one left. - Place no longer deletes fresh pickaxes if a pickaxe has been broken before. - Waxing a golem no longer runs the golem as well.
release

Code of Copper v0.3.3

0.3.3
19 июн. 2024 г.126Minecraft: 1.21datapack
Скачать
Что нового
## [0.3.3] - 2024-06-19 Update to 1.21 ### Changed - The datapack now requires 1.21.
release

Code of Copper v0.3.2

0.3.2
27 апр. 2024 г.127Minecraft: 1.20.5, 1.20.6datapack
Скачать
Что нового
## [0.3.2] - 2024-04-27 Update to 1.20.5 ### Changed - The datapack now requires 1.20.5 ### Fixed - The golem now starts a program from the beginning every time it is run
release

Code of Copper v0.3.1

0.3.1
29 янв. 2024 г.231Minecraft: 1.20.2, 1.20.3, 1.20.4datapack
Скачать
Что нового
## [0.3.1] - 2024-01-29 The big split ### Added - The background of the text above the golem is now coloured based on its oxidisation level ### Changed - The GolemScript language has been split from this datapack - It is now its own separate pack - This datapack uses its API to run programs and control the golems - Empty and same programs now rerun the previous program - Broken golems now store their oxidisation level, and whether they had been waxed ### Removed - All code that processes the GolemScript language - This can now all be found in the [GolemScript datapack](https://modrinth.com/datapack/golemscript) - Code of Copper is now a runtime for GolemScript, and only contains code for manipulating golems - The experimental API - This is now part of the GolemScript API
alpha

[Alpha] Code of Copper v0.3.1-alpha-1

0.3.1-alpha-1
23 дек. 2023 г.86Minecraft: 1.20.2datapack
Скачать
Что нового
## [0.3.0-alpha-1] - 2023-12-24 ### Added - Experimental, unstable support for extensions. - This should only impact datapack developers wishing to add their own functions. - No other changes made so far.
release

Code of Copper v0.3.0

0.3.0
26 нояб. 2023 г.295Minecraft: 1.20, 1.20.1, 1.20.2datapack
Скачать
Что нового
## [0.3.0] - 2023-11-26 Overhauled the entire language. ### Added - Custom Functions - Function definitions - Function calls - return keyword - Stdlib Functions - random: to generate random numbers - time: to get the current gametime - Var keyword for global variables - Assignment operators such as += and -= - Booleans - Constants - Resource literal - << and >> operators - Objects can be indexed with dot (.) notation - Other miscellaneous operators ### Changed - Rewrote all documentation - Now contains every language feature - Better documented and easier to understand - Available [here](https://datapack.dev/docs/code_of_copper) - Many instructions are now built in functions - You can now use functions such as getblock inside expressions - $INVENTORY and $POS are now functions: inventory() and pos() - pos() now returns an object, instead of an array - inventory() now returns a array of resources, rather than strings - Variables only exist within the scope that they are created - Predicates updated to use 1.20 format - The entire interpreter was re-written from the ground up - It should now be far more reliable going forwards - Place now takes a resource rather than a slot number - Minus operator no longer removes items from objects/arrays ### Fixed - Regex matcher is now correctly passed a string's value - Backslashes, unless escaping `/`, no longer need to be escaped themselves.
beta

[Beta] Code of Copper v0.3.0-beta-2

0.3.0-beta-2
24 авг. 2023 г.112Minecraft: 1.20, 1.20.1datapack
Скачать
Что нового
## [0.3.0-beta-2] - 2023-05-25 We rewrote the entire interpreter. ### Added - Resource literal - Added << and >> operators - Objects can be indexed with dot (.) notation ### Changed - Predicates updated to use 1.20 format - The entire interpreter was re-written from the ground up - It should now be far more reliable going forwards - Place now takes a resource rather than a slot number - Minus operator no longer removes items from objects/arrays ### Fixed - Custom functions now can be called from expressions.
beta

[Beta] Code of Copper v0.3.0-beta-1

0.3.0-beta-1
24 мая 2023 г.129Minecraft: 1.19.4datapack
Скачать
Что нового
## [0.3.0-beta-1] - 2023-05-25 Fix all the stupid bugs of 0.3.0-alpha-1 ### Added - Constants ### Fixed - Prevent running bots with compile errors - Bot no longer loses error messages when recompiling programs - Return not exiting functions - Functions can be called within expressions - Functions called within functions return values properly - Random function is now actually random - Functions can be defined and called with no arguments/parameters
alpha

[Alpha] Code of Copper v0.3.0-alpha-1

0.3.0-alpha-1
22 мар. 2023 г.72Minecraft: 1.19.4datapack
Скачать
Что нового
## [0.3.0-alpha-1] - 2023-03-23 Functions ### Added - Functions - Function definitions - Function calls - return keyword - Var keyword for global variables - Assignment operators such as += and -= - Booleans ### Changed - Many instructions are now built in functions - Variables only exist within the scope that they are created
release

Code of Copper v0.2.3

0.2.3
3 мар. 2023 г.171Minecraft: 1.19.4datapack
Скачать
Что нового
## [0.2.3] - 2023-02-03 Lots of unit tests and fixed bugs after the interpreter refactor ### Added - Array indexing with negative numbers, starting from the end of the list - Unit tests for literal and expression evaluation - Integration test module for testing instructions - This can be placed by running `/function bot:spec/place` ### Fixed - Regex matcher is now correctly passed a string's value - Backslashes, within a Regex literal, unless escaping `/`, no longer need to be escaped themselves. - $INVENTORY and $POS variables now parse correctly again