Jump to content

[Showcase] MTA Build Tool


vicisdev

Recommended Posts

This is not being maintained, but you still should try it

 

Hey, people.

In this topic I'm going to present you to a tool I've been working for a little while now. It's called MTA Build Tool.

If you develop for the web you know there are tons of frameworks that automate and make the development experience satisfying. As you probably know, there's no such a thing to MTA resource development. This tool it's aimed to provide you a whole new experience of resource development.

 

Current features

At this point it features a built in development server, meaning it automatically downloads a MTA server for you to work on. The "repository" it's maintained by me and it's currently using MTA server version 1.5.8. Keeping on the development perspective, the tool comes with the ability to auto refresh your resources when some file in the resources directory changes.

Another great thing is that it automatically generates a Meta.xml for all your resources. You won't need to bother with Meta.xml anymore (kind of). So, when developing new resources all you have to do is to create a directory and start writing .lua files into it. By the way, you need to follow the sugested resources directory structure where the naming of your directories does matter. Directories names surrounded by brackets will not be recognized as a resource directory.

Now on the release side, it already comes with the ability to compile all your scripts. To compile, it uses the MTA Lua Compiler with obfuscation on level 3. It's, also, possible to compact all your resources to a .zip file.

 

 

 

Future features

I'm planning to give support to Typescript to Lua which is a hot project that make it possible to write lua scripts with Typescript.
I think it would be cool to design a development environment that enforces great quality script development, but I'm not sure. Maybe it's beyond scope.

 

Contributions

Currently it's a private repository, but soon I'll open this project for contribution. I've never done open source before, so I'm not really sure how it goes.

 

You can right now try this alpha alpha version by cloning this repository https://github.com/alvesvin/mtabt-template.
This tool depends on NodeJS. If you've never worked with Node before you must install it in order to be possible to execute commands like npm run dev and npm run build.

Edited by vicisdev
  • Like 1
Link to comment

Hello!

Nice tool. Hot-reloading is very impressive.

I'm currently working on mtasa-lua-types (nodejs repository with types declarations).

I have the resource example, written fully on TypeScript: https://github.com/mtasa-typescript/resource-example . Here is the "boilerplate" and tutorial how to setup: https://github.com/mtasa-typescript/resource-boilerplate . You can use those packages, boilerplates, etc. in future, if you are interested in :)

Link to comment
On 02/03/2021 at 17:06, Toliak said:

Hello!

Nice tool. Hot-reloading is very impressive.

I'm currently working on mtasa-lua-types (nodejs repository with types declarations).

I have the resource example, written fully on TypeScript: https://github.com/mtasa-typescript/resource-example . Here is the "boilerplate" and tutorial how to setup: https://github.com/mtasa-typescript/resource-boilerplate . You can use those packages, boilerplates, etc. in future, if you are interested in :)

Very cool stuff. One thing that would be great it's letting users to access types definitions from the global scope as described in the Typescript documentation for global module declaration. I was planning to work with type declaration for TypescriptToLua in MTA and I found it's better to work on a fork of this official lua types repository. They've created pretty decent typing declarations for all versions of Lua. The only thing to do here is to remove what's not from Lua 5.1 and then implement the MTA specific library.

If you know Typescript well it will be awesome. I just scratch the surface when it comes to Typescript knowledge.

 

Link to comment
  • 1 month later...
On 28/04/2021 at 21:26, vicisdev said:

You can still download and use it, but I stopped working on this for quite a while now. Don't expect this to work 100% properly. This maily lacks meta.xml support. You can download it here https://github.com/alvesvin/mtabt-template/archive/refs/heads/master.zip

Brother I start using it but therr is some error happing

I install node.js and try command npm install

It installed but while duing npm dev run it gives me error

Hope you help me. Aa give me your discord id I ill meet yu on discord

Mine is XeRo#4868

Link to comment
37 minutes ago, HydraLazy said:

Brother I start using it but therr is some error happing

I install node.js and try command npm install

It installed but while duing npm dev run it gives me error

Hope you help me. Aa give me your discord id I ill meet yu on discord

Mine is XeRo#4868

I'm sorry. I've accidentally deleted my repository where the server's binary were stored. I'll be fixing this today. As soon as I finish this, I'll let you know.

Edited by vicisdev
Link to comment
2 hours ago, HydraLazy said:

Brother I start using it but therr is some error happing

I install node.js and try command npm install

It installed but while duing npm dev run it gives me error

Hope you help me. Aa give me your discord id I ill meet yu on discord

Mine is XeRo#4868

I fixed it. You can now download the repository again and hopefully use it.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...