Difference between revisions of "Development"

From WowWiki
Jump to navigation Jump to search
(Link CubiOS Rust SDK repo (WowBot))
 
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Developing WOWCube-specific applications ==
+
Developing WOWCube-specific applications
  
  If you have a question, consider visiting '''#how-to''' in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.
+
  If you have a coding question, consider visiting '''#how-to''' in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.
  
WOWCube offers several programming paradigms:
 
  
 +
{{notice|'''Official API reference: [[SDK 6.3]].''' The current SDK 6.3 API — one page per module (PAWN now; C++ and Rust coming). '''Start here → [[SDK 6.3]].'''}}
  
:1. Development of specialized applications (cubelets) can be carried out:
 
  
:* in PAWN. Pawn language is a derivative of “Small C” (See [https://github.com/compuphase/pawn/blob/master/doc/Pawn_Language_Guide.pdf Pawn_Language_Guide.pdf], and [https://wiki.alliedmods.net/Pawn_Tutorial Pawn Tutorial])
+
WOWCube offers several programming paradigms.
 +
{{APIBox
 +
|name=WOWCube runtime API
 +
|runtime=PAWN (SDK 6.3)
 +
|purpose=Cube-specific drawing, topology, input, sound and storage functions.
 +
|constraints=See the per-module pages under [[SDK 6.3]].
 +
}}
 +
Development of specialized applications (cubelets) can be carried out:
  
:[[API|WOWCube PAWN API (Cube-specific Pawn functions)]]
 
  
 +
===in PAWN. Pawn language is a derivative of “Small C”===
 +
(See [https://github.com/compuphase/pawn/blob/master/doc/Pawn_Language_Guide.pdf Pawn_Language_Guide.pdf], and [https://wiki.alliedmods.net/Pawn_Tutorial Pawn Tutorial])
 +
:: [[SDK 6.3|'''SDK 6.3 PAWN API''' — current, official]]
 +
:: [[API|WOWCube PAWN API (Cube-specific Pawn functions)]]
 +
:: [[PawnProgrammingNotes|(New) "How To's" of Pawn Programming]]
  
:* also using [https://webassembly.org/ WebAssembly] ( based on wasm3 )  
+
===C/C++/Rust using [https://webassembly.org/ WebAssembly] ( based on wasm3 )===
:[[WASM|WOWCube WASM API (Cube-specific Wasm functions)]]
+
:: [[WASM|WOWCube WASM API (Cube-specific Wasm functions)]]
 +
:: [https://github.com/wowcube/CubiOS_Rust_SDK CubiOS Rust SDK on GitHub] ''(experimental)''
  
  
:2. <code>[obsolete]</code> <s>Development of programs for smartphones (or other external devices) transmitting data and graphics to the cube as to an external device, according to the protocol BlueTooth. We call this mode "Projector"</s> <code>[obsolete]</code>
+
===also with our DevKit===
  
 +
:: [[SDK|WOWCube DevKit Guide]]
  
:3. Development using WOWCube DevKit: software bundle that allows you to develop games and applications for WOWCube without having a physical device. Apps can be transferred to a cube via BlueTooth using from VSC plugin.
+
:WOWCube DevKit is the multi-platform software bundle that allows developers to streamline the programming workflow for WOWCube device using only Mac/PC or a laptop, before testing games/apps on a physical cube.  
 +
:Utilizing the VSC plugin included in the DevKit, apps can be transferred to a cube via BT 4.2 as well.
  
:[[SDK|WOWCube DevKit Guide]]
+
 
 +
===[[Errors description|WOWCube Errors description]]===
 +
===[[Application memory description|Application memory description]]===

Latest revision as of 10:41, 26 July 2026

Developing WOWCube-specific applications

If you have a coding question, consider visiting #how-to in our Discord's Code Desk (https://discord.gg/kCay3Rdbst) for getting help from fellow developers and official support both.


Official API reference: SDK 6.3. The current SDK 6.3 API — one page per module (PAWN now; C++ and Rust coming). Start here → SDK 6.3.


WOWCube offers several programming paradigms.

API reference: WOWCube runtime API

  • Runtime: PAWN (SDK 6.3)
  • Purpose: Cube-specific drawing, topology, input, sound and storage functions.
  • Constraints: See the per-module pages under SDK 6.3.
Development of specialized applications (cubelets) can be carried out:


in PAWN. Pawn language is a derivative of “Small C”

(See Pawn_Language_Guide.pdf, and Pawn Tutorial)
SDK 6.3 PAWN API — current, official
WOWCube PAWN API (Cube-specific Pawn functions)
(New) "How To's" of Pawn Programming

C/C++/Rust using WebAssembly ( based on wasm3 )

WOWCube WASM API (Cube-specific Wasm functions)
CubiOS Rust SDK on GitHub (experimental)


also with our DevKit

WOWCube DevKit Guide
WOWCube DevKit is the multi-platform software bundle that allows developers to streamline the programming workflow for WOWCube device using only Mac/PC or a laptop, before testing games/apps on a physical cube.
Utilizing the VSC plugin included in the DevKit, apps can be transferred to a cube via BT 4.2 as well.


WOWCube Errors description

Application memory description