Paracraft SDK Walk Through

Fast walk through video for users and partners. TIP Download and then watch offline for HD version.

What is ParacraftSDK?

Free and open source SDK behind What can you do with it?
  • kids learn programming with most popular IDE(Visual studio)
  • create plugins (mods) for Paracraft
  • create and publish apps that runs on windows/android/iOS

About Us

Project begins in 2005. Code is solid and installed on millions of end user computers during the past 6 years.

How to Install

Contact the author (LiXizhi) to get full source code, or download public version at https://github.com/LiXizhi/ParaCraftSDK

What is inside ParacraftSDK?

  • ParaEngine: C++ 3D game engine: cross platform, separate DirectX/openGL graphics engine, GUI, networking, physics, audio and many more.
  • NPL scripting language: 1 million lines of fully documented code in NPL.
  • MCML: user interface markup language written in NPL.
  • IDE extension for visual studio: NPL code editing, debugging, etc.
  • Paracraft app, Haqi 3DMMORPG app and many other sample or editor projects written by ParacraftSDK. Open sourced for your reference.
  • Other tools: such as 3dsmax model exporters, etc.
  • PEDN: ParaEngine Developer Network. The Twiki site for documentation.

How to learn ParacraftSDK?

  • Play Paracraft in depth for 20 hours.
  • Create a movie with Paracraft
  • Learn C++/lua
  • Watch and follow all tutorial videos on http://www.paracraft.cn
  • Loop until you learnt it

Quick guide to ParacraftSDK

Quick guide to NPL

  • where and how to browse source code in ParacraftSDK
  • three important facts of lua: (Fast to learn, slow to master)
    • static(lexical) scoped: variables can be bound at compile time without regards to calling code.
    • invariant string
    • with JIT
  • the activate function of NPL file.
  • Object oriented programming in NPL.
  • Tools: NPL language service, NPL debugger for visual studio, buildin debug app (F12)
  • rich library covering networking, UI, 3D rendering.

Quick guide to MCML

Similar to web programming: MCML = HTML NPL = Javascript
  • HelloWorld MCML
  • Quick refresh and debug cycle with buildin web browser (Ctrl + F3)
  • Code behind pattern
  • Programmatically load MCML page
  • Source code location to find documentation about MCML
  • Creating your own MCML tag.
  • Quick overview of advanced mcml tags: pe:gridview, pe:if, pe:script, etc.

Quick guide to 3dsmax exporter

  • ParaX exporter
  • FBX exporter

Quick guide to plugins development

  • supporting plugins written in mixed NPL / Mono C# / C++.
  • architecture of ParaEngine plugins
  • PETools for visual studio
  • Paracraft Mod development sample
    • how to add/replace main UI (more mod integration points of the user interface should be added)
    • how to add command
    • how to add entity, items, blocks
    • how to add shader

Quick guide to environment setup

Recommended tools for programming environment setup.
  • git: decentralized. GUI tool is SourceTree.
  • svn: good for corporate centralized network.
  • alienbrain / perforce: centralized and good for large assets. we have 500GB of versioned assets in the past 8 years.
  • cmake: good for c/c++ project
  • script: win32 batch file, bash (linux or CYGWin), python, etc.
  • hudson CI: deployment / build / test

Introduction to NPL code wiki

  • How to start NPL code wiki? From menu or command.
    • Server is your paracraft client, readonly world can not host for security reasons.
  • What is NPL code wiki? A website of code samples for learning NPL.
  • Quick walkthrough: console, object_browser, world
  • A hello world page from your world directory.
Topic revision: r9 - 2015-07-06 - LiXizhi
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback