Skip to content

Singluar Framework ​

What is Singluar?

Singluar is a warcraft 3 map development framework, can run on windows platform. Combined with YD, Dz runtime environment. With the use of golang language management tools , it supports advanced map hot update , global code obfuscation encryption , so you develop online experience more convenient and comfortable .

singluar

Getting the framework ​

You directly download the leanest code package here

singluar tiny code package

also go to GitHub for

GitHub/singluar

Documentation and Dependencies

Checking the documentation and introducing dependencies into the project is a must, you can check out the Technical support document

Framework Structure ​

(*)Required

(~)Automatic

(·)Customize

├── assets - (*|-) repository
│   ├── war3mapFont - for fonts, only supports ttf
│   ├── war3mapIcon - put icon, only support tga
│   ├── war3MapLoading - Load image, only support single tga or rule combination tga.
│   ├── war3mapModel - Load model, only support mdx, don't throw in maps.
│   ├── war3mapPreview - Preview the map, only support tga.
│   ├── war3mapSelection - put the selection circle, refer to the provided format.
│   ├── war3mapSound - put sound music, only support mp3
│   ├── war3mapTextures - put model textures, only support blp
│   └── war3mapUI - put UI suite, format reference is already available
├── assetsNew - (*|-) Same structure as assets, used when handling new resources.
├── projects - (~|-) used to put your map project directory, such as project_demo
│   └── project_demo -(-)
├── temp -(~) cache
├── vendor -(*)
│   ├── kernel - functional core
│   ├── lni - important map data
│   ├── models - model command map template
│   ├── w3x2lni - w3x2lni tool (v:2.7.2)
│   └── WE - horse tool
├── conf - (~|-) configuration
└── sl.exe - (*) command tool

Installing Tools and Plug-ins ​

Programming Tools (For reference only, you can also ignore it and use other tools like golang, cursor, etc.)

IntelliJ IDEA Community Edition

Visual Studio Code

JetBrains Series Plugin Recommendations ​

Optional plugin EmmyLua

Emmylua

Optional plugin Image Icon Viewer

ImageIconViewer

Optional plugin Color Highlighter

ColorHighlighter

Optional plugin CodeGeeX

ColorHighlighter

Optional plugin Continue

Continue

Terminal operations ​

Open a terminal and go to the frame root directory

> cd ./singluar

Create a new project

> sl.exe new demo

Local test with hot update

> sl.exe run demo -h

Managing Projects with the History Tool

You should use versioning code history management tools (Git, Svn, etc.) to manage your development projects. You can use third-party hosting platforms (e.g., GitHub, GitLab, Gtiee, Bitbucket), or self-built (e.g., Gogs) management tools, and please at least use the tools locally to build a local version. No one knows when they're going to make a mistake. Code history allows you to view every change, roll back versions, and back up results.

All publicly available technologies are released under the AGPL3 licence.