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.