Difference between revisions of "Development"

From WowWiki
Jump to navigation Jump to search
m
(Link CubiOS Rust SDK repo (WowBot))
 
(15 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Developing WOWCube-specific applications ==
+
Developing WOWCube-specific applications
  
WOWCube offers several programming paradigms. Development of specialized applications (cubelets) can be carried out:
+
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.
  
  
:1. ...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])
+
{{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]].'''}}
:: [[API|WOWCube PAWN API (Cube-specific Pawn functions)]]
+
 
  
 +
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:
  
:2. ...using [https://webassembly.org/ WebAssembly] ( based on wasm3 )
 
:: [[WASM|WOWCube WASM API (Cube-specific Wasm 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]]
  
:3. <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>
+
===C/C++/Rust using [https://webassembly.org/ WebAssembly] ( based on wasm3 )===
 +
:: [[WASM|WOWCube WASM API (Cube-specific Wasm functions)]]
 +
:: [https://github.com/wowcube/CubiOS_Rust_SDK CubiOS Rust SDK on GitHub] ''(experimental)''
  
  
:4. ...also with our DevKit  
+
===also with our DevKit===
  
 
:: [[SDK|WOWCube DevKit Guide]]
 
:: [[SDK|WOWCube DevKit Guide]]
  
:WOWCube DevKit is the software bundle we develop that allows you to streamline the workflow when programming games/applications for WOWCube using only laptop/PC before tesing it on a physical device.  
+
: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 VSC plugin included in the DevKit then, apps can be transferred to a cube via BlueTooth. Currently there are two WOWCube DevKit versions developed in parallel: for Windows and MacOS environments.
+
:Utilizing the VSC plugin included in the DevKit, apps can be transferred to a cube via BT 4.2 as well.
 +
 
  
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.
+
===[[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