Create: Radionautics

Quick rating

Create: Radionautics

No reviews yet

A mod that adds radio links for create mod for inifinte range transmissions

Mod Loaders
NeoForge
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Required
Server Required

About

Project Details

Type
Mod
License
All Rights Reserved
Latest Version
create_radionautics-0.1.6.jar
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

# Create: Radionautics CC:Tweaked Guide

Create: Radionautics adds radio peripherals for CC:Tweaked computers. These radios let computers send messages over long distances using Create-themed antenna blocks.

## Requirements

- Minecraft 1.21.1
- NeoForge
- Create
- Create Aeronautics
- CC:Tweaked
- Create: Radionautics

## Radio Blocks

Radionautics adds three CC:Tweaked radio antenna peripherals:

| Block | Range | Active bound frequencies |
| --- | ---: | ---: |
| Andesite Radio Antenna | 2000 blocks | 1 |
| Copper Radio Antenna | 5000 blocks | 2 |
| Brass Radio Antenna | Infinite | 5 |

Place a radio antenna directly next to a CC:Tweaked computer.

## Getting The Peripheral

Use `peripheral.find`:

```lua
local radio = peripheral.find("radionautics_radio")
```

Or wrap a known side:

```lua
local radio = peripheral.wrap("left")
```

You can check the radio tier:

```lua
print(radio.tier())
print(radio.range())
print(radio.maxBinds())
```

## Sending A Message

Sender:

```lua
local radio = peripheral.find("radionautics_radio")

radio.send("145.500", "chat:hello from base")
```

The first argument is the frequency. The second argument is the message.

## Receiving Messages

Receiver:

```lua
local radio = peripheral.find("radionautics_radio")

radio.udpBind("145.500")

while true do
  local event, frequency, senderId, message = os.pullEvent("radio_message")
  print("Frequency: " .. frequency)
  print("Sender: " .. senderId)
  print("Message: " .. message)
end
```

The receiver must bind the frequency first:

```lua
radio.udpBind("145.500")
```

Incoming messages fire a `radio_message` event:

```lua
local event, frequency, senderId, message = os.pullEvent("radio_message")
```

## Chat Example

Run this on the receiving computer:

```lua
local radio = peripheral.find("radionautics_radio")
radio.udpBind("145.500")

print("Listening on 145.500")

while true do
  local event, frequency, senderId, message = os.pullEvent("radio_message")
  print("[" .. frequency .. "] " .. senderId .. ": " .. message)
end
```

Run this on the sending computer:

```lua
local radio = peripheral.find("radionautics_radio")

while true do
  write("Message: ")
  local message = read()
  radio.send("145.500", "chat:" .. message)
end
```

## Encryption Helpers

Radionautics includes helper methods for encoding/encryption.

Available crypto types:

- `none`
- `xor`
- `aes`
- `base64`

Encrypted sender:

```lua
local radio = peripheral.find("radionautics_radio")

local key = "secret-key"
local message = "chat:encrypted hello"
local encrypted = radio.cryptoEncrypt("aes", message, key)

radio.send("145.500", encrypted)
```

Encrypted receiver:

```lua
local radio = peripheral.find("radionautics_radio")

radio.udpBind("145.500")

local key = "secret-key"

while true do
  local event, frequency, senderId, encrypted = os.pullEvent("radio_message")
  local ok, message = pcall(function()
    return radio.cryptoDecrypt("aes", encrypted, key)
  end)

  if ok then
    print(message)
  end
end
```

If the wrong key is used, decrypting may fail. Use `pcall` if you want to ignore bad packets safely.

## Frequencies

Frequencies are text. They can be numbers or names:

```lua
radio.udpBind("145.500")
radio.udpBind("AIRSHIP")
radio.udpBind("main_base")
```

The sender and receiver must use the same frequency.

## Bind Limits

Each antenna tier has a maximum number of active bound frequencies.

```lua
radio.udpBind("145.500")
radio.udpBind("fleet")
```

If the antenna is out of bind slots, binding returns `false`.

Close a frequency when finished:

```lua
radio.close("145.500")
```

List active binds:

```lua
for _, frequency in ipairs(radio.boundFrequencies()) do
  print(frequency)
end
```

## Queued Messages

You can poll messages manually:

```lua
local packet = { radio.receive() }

if packet[1] then
  local frequency = packet[1]
  local senderId = packet[2]
  local message = packet[3]
  print(message)
end
```

Usually, `os.pullEvent("radio_message")` is easier.

Check queued message count:

```lua
print(radio.queuedMessages())
```

## Sable / Ship Helpers

Radionautics exposes early Sable/Create Aeronautics helper methods:

```lua
radio.sableContinousLoad(true)
radio.sableContinousLoad(false)
```

Check if continuous loading is enabled:

```lua
print(radio.sableIsContinousLoading())
```

Get the current ship center position:

```lua
local pos = radio.sableShipCenterPos()
print(pos.x, pos.y, pos.z)
```

Note: ship integration is still being developed. Current behavior may fall back to block position.

## Optional Helper API

Radionautics also provides a helper API:

```lua
local radio = radionautics.find()
radio.udpBind("145.500")
radio.send("145.500", "chat:hello")
```

Crypto helper:

```lua
local encrypted = radionautics.crypto.encrypt("aes", "hello", "key")
local clear = radionautics.crypto.decrypt("aes", encrypted, "key")
```

Sable helper:

```lua
radionautics.sable.continousLoad(true)
```

## Troubleshooting

### `No radionautics_radio peripheral attached`

Make sure the antenna block is directly next to the computer.

### No message received

Check:

- Receiver called `radio.udpBind(frequency)`.
- Sender and receiver use the exact same frequency.
- The antennas are in the same dimension.
- The antennas are within range.
- The receiver program is still running.

### Encrypted message fails

Check:

- Both computers use the same crypto type.
- Both computers use the same key.
- The receiver uses `pcall` if it wants to ignore bad packets.

### Bind fails

The antenna may be out of active frequency slots.

Use:

```lua
print(radio.maxBinds())
print(radio.boundFrequencies())
```

Then close unused frequencies:

```lua
radio.close("old_frequency")
```

Create Radionautics is ment to be a mod where realistic radios can be used to comunicate between players and computers. Currently There is a brass radio link ment to add infinite range for redstone links (its encryption mode doesn't work yet). The anntennas for cc:tweaked are ment to replace modems adding a progrssion to how strong connections can be for computers currenlty only brass anntenna can connect sable entities to other sable entities or the normal world as they have infinite range.

The andesite anntenna has a range of 2000 blocks and the copper anntenna has a range of 500 blocks

A simple tutorial on how to use the anntenas for UDP or TCP transfers via anntenas

Create: Radionautics CC:Tweaked Guide

Create: Radionautics adds radio peripherals for CC:Tweaked computers. These radios let computers send messages over long distances using Create-themed antenna blocks.

Requirements

  • Minecraft 1.21.1
  • NeoForge
  • Create
  • Create Aeronautics
  • CC:Tweaked
  • Create: Radionautics

Radio Blocks

Radionautics adds three CC:Tweaked radio antenna peripherals:

Block Range Active bound frequencies
Andesite Radio Antenna 2000 blocks 1
Copper Radio Antenna 5000 blocks 2
Brass Radio Antenna Infinite 5

Place a radio antenna directly next to a CC:Tweaked computer.

Getting The Peripheral

Use peripheral.find:

local radio = peripheral.find("radionautics_radio")

Or wrap a known side:

local radio = peripheral.wrap("left")

You can check the radio tier:

print(radio.tier())
print(radio.range())
print(radio.maxBinds())

Sending A Message

Sender:

local radio = peripheral.find("radionautics_radio")

radio.send("145.500", "chat:hello from base")

The first argument is the frequency. The second argument is the message.

Receiving Messages

Receiver:

local radio = peripheral.find("radionautics_radio")

radio.udpBind("145.500")

while true do
  local event, frequency, senderId, message = os.pullEvent("radio_message")
  print("Frequency: " .. frequency)
  print("Sender: " .. senderId)
  print("Message: " .. message)
end

The receiver must bind the frequency first:

radio.udpBind("145.500")

Incoming messages fire a radio_message event:

local event, frequency, senderId, message = os.pullEvent("radio_message")

Chat Example

Run this on the receiving computer:

local radio = peripheral.find("radionautics_radio")
radio.udpBind("145.500")

print("Listening on 145.500")

while true do
  local event, frequency, senderId, message = os.pullEvent("radio_message")
  print("[" .. frequency .. "] " .. senderId .. ": " .. message)
end

Run this on the sending computer:

local radio = peripheral.find("radionautics_radio")

while true do
  write("Message: ")
  local message = read()
  radio.send("145.500", "chat:" .. message)
end

Encryption Helpers

Radionautics includes helper methods for encoding/encryption.

Available crypto types:

  • none
  • xor
  • aes
  • base64

Encrypted sender:

local radio = peripheral.find("radionautics_radio")

local key = "secret-key"
local message = "chat:encrypted hello"
local encrypted = radio.cryptoEncrypt("aes", message, key)

radio.send("145.500", encrypted)

Encrypted receiver:

local radio = peripheral.find("radionautics_radio")

radio.udpBind("145.500")

local key = "secret-key"

while true do
  local event, frequency, senderId, encrypted = os.pullEvent("radio_message")
  local ok, message = pcall(function()
    return radio.cryptoDecrypt("aes", encrypted, key)
  end)

  if ok then
    print(message)
  end
end

If the wrong key is used, decrypting may fail. Use pcall if you want to ignore bad packets safely.

Frequencies

Frequencies are text. They can be numbers or names:

radio.udpBind("145.500")
radio.udpBind("AIRSHIP")
radio.udpBind("main_base")

The sender and receiver must use the same frequency.

Bind Limits

Each antenna tier has a maximum number of active bound frequencies.

radio.udpBind("145.500")
radio.udpBind("fleet")

If the antenna is out of bind slots, binding returns false.

Close a frequency when finished:

radio.close("145.500")

List active binds:

for _, frequency in ipairs(radio.boundFrequencies()) do
  print(frequency)
end

Queued Messages

You can poll messages manually:

local packet = { radio.receive() }

if packet[1] then
  local frequency = packet[1]
  local senderId = packet[2]
  local message = packet[3]
  print(message)
end

Usually, os.pullEvent("radio_message") is easier.

Check queued message count:

print(radio.queuedMessages())

Sable / Ship Helpers

Radionautics exposes early Sable/Create Aeronautics helper methods:

radio.sableContinousLoad(true)
radio.sableContinousLoad(false)

Check if continuous loading is enabled:

print(radio.sableIsContinousLoading())

Get the current ship center position:

local pos = radio.sableShipCenterPos()
print(pos.x, pos.y, pos.z)

Note: ship integration is still being developed. Current behavior may fall back to block position.

Optional Helper API

Radionautics also provides a helper API:

local radio = radionautics.find()
radio.udpBind("145.500")
radio.send("145.500", "chat:hello")

Crypto helper:

local encrypted = radionautics.crypto.encrypt("aes", "hello", "key")
local clear = radionautics.crypto.decrypt("aes", encrypted, "key")

Sable helper:

radionautics.sable.continousLoad(true)

Troubleshooting

No radionautics_radio peripheral attached

Make sure the antenna block is directly next to the computer.

No message received

Check:

  • Receiver called radio.udpBind(frequency).
  • Sender and receiver use the exact same frequency.
  • The antennas are in the same dimension.
  • The antennas are within range.
  • The receiver program is still running.

Encrypted message fails

Check:

  • Both computers use the same crypto type.
  • Both computers use the same key.
  • The receiver uses pcall if it wants to ignore bad packets.

Bind fails

The antenna may be out of active frequency slots.

Use:

print(radio.maxBinds())
print(radio.boundFrequencies())

Then close unused frequencies:

radio.close("old_frequency")

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

<1,000
Total Downloads
CurseForge
<1,000
Modrinth
<1,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works