Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Eclipse Origins Automata


Ruins of Hell
 Share

Recommended Posts

**Automata**
Port Your Edit Today

Automata is a way to revolutionize the way people install your source edits. Quite simply, a developer writes his source edit as he normally would, but then ports it over to Automata. To explain this, we need to take a look at the current model of Eclipse.

> Developers write code in Visual Basic 6.
> Game Makers install their code.
> Game Makers get sad because the code doesn't work!

_But with Automata:_

> Developers write code in Visual Basic 6.
> Developers painlessly port their code over to Automata with the toolkit.
> Game Makers rejoice! They click an executable and the code installs before their very eyes!

So as you can see, the process is easy and painless.

Automata for Programmers
The first step with Automata is to port your code over. Download the files at the bottom of the page. Good? Right. Anyways, go to the toolkit [here](http://www.automata.freemmorpgmaker.com/toolkit.html). It's a watered down version of the full toolkit I'll be releasing, and currently the commands don't work. It should suit you fine. If you need any help, post in this topic. When you're done, compile the code using Aut2Exe (included in AutoItv3).

Downloads

**[Download for Automata Developers](http://www.automata.freemmorpgmaker.com/automata.au3)**
You'll need to install **[AutoIt v3](http://www.autoitscript.com/site/autoit/downloads/)**, a BASIC like language as well. The program you are installing now is the framework, do not change the functions, just the code. [Code Repository](http://www.automata.freemmorpgmaker.com/repo/code/).

**Downloads for Game Developers:**
[Executable Repository. All preapproved and trusted!](http://www.automata.freemmorpgmaker.com/repo/exe/) Just put them in your eo_2_0_0 folder and double click!

Contact
All help, suggestions or questions should be in this topic.
Link to comment
Share on other sites

  • Replies 53
  • Created
  • Last Reply

Top Posters In This Topic

@Lightning:

> Very impressive, Soul. I'll give this a try later when I have more time. I'll get to converting my tutorials later on! :]

Glad to help. I'll be creating an index like structure of them, so send me the code for compilation and addition when it's done.

**Updates**:

* Bug fixed where the toolkit would not properly translate quotation marks.
* Removed example code, you can find code now on the /repo/code/.
* Plans to add /repo/exe/ is now underway. Send me your AU3 file, I'll compile it (assuming I approve of it) and put it there as a .zip.
* Known bug: the toolkit doesn't seem to function with backslashes (\), and just replaces them with a space.
Link to comment
Share on other sites

@Rithy58:

> I like this.
>
> I'm still not absolutely understand how this work and I feel like there'll be idiots who still mess this up.
>
> Sincerely,
> Rithy

I'll write up some guides for it once it gets more popular. It's very easy to mess up at the moment, all they have to do is click something else while it's running. There's a message box telling them not to, but I'm still pretty sure they'll click elsewhere. I'm working on a C version (actually, I was originally working on a C version, this is sort of like a start up) of this.

@Azyru:

> Probably, but I think this could be very useful. Nice job, soul.

Thanks.
Link to comment
Share on other sites

you made some mistakes mate :p

```
If WinGetTitle("[active]") = "Notepad" Then
ControlClick ("Window", "Cannot find \" & $string & "\", "[CLASS:Button; INSTANCE:1]")
Dim $error
$error = MsgBox (0x14, "Error", "String " & $string & " not found. Abort?")
If $error = 6 Then
Exit
EndIf
EndIf

```
there, all fixed, btw, use notepad's classname, not the title, for example, its called kladblok on my end :P

PS, if you need help on autoit version, feel free to ask, got years of experience :P

Dami
Link to comment
Share on other sites

@Damian666:

> you made some mistakes mate :p
>
> ```
> If WinGetTitle("[active]") = "Notepad" Then
> ControlClick ("Window", "Cannot find \" & $string & "\", "[CLASS:Button; INSTANCE:1]")
> Dim $error
> $error = MsgBox (0x14, "Error", "String " & $string & " not found. Abort?")
> If $error = 6 Then
> Exit
> EndIf
> EndIf
>
> ```
> there, all fixed, btw, use notepad's classname, not the title, for example, its called kladblok on my end :P
>
> PS, if you need help on autoit version, feel free to ask, got years of experience :P
>
> Dami

Haha. I'm not very good at AutoIt obviously.

Does this work:
```
If WinGetTitle("[active]") = "[CLASS:Notepad]" Then
...

```
What's the ControlClick "window" thing for? Is that just the current window?
Link to comment
Share on other sites

that should work just fine if ya ask me, try it, lets see if it does :P

oh, and the "[" and "]" arent needed mate, thats just how its better shown in helpfile.

also, when  ya start, get a  handle to the window created, so you dont have to keep checking afterwards ^^

controlclick is used like: ControlClick("CLASS:Notepad", "", "MDIClient1")

for example ofcourse

Dami
Link to comment
Share on other sites

@Rithy58:

> I like this.
>
> **I'm still not absolutely understand how this work** and I feel like there'll be idiots who still mess this up.
>
> Sincerely,
> Rithy

When you have a project with a whole bunch of source edits, you dont wanna download an EO version with a cool source edit inside from sum1 on the forums. and u dont feel like following his 3 page tutorial. So you use this program to have his code installed into your source automaticly.

Atleast, thats what i get. i might be wrong.
Link to comment
Share on other sites

@Greendude120:

> When you have a project with a whole bunch of source edits, you dont wanna download an EO version with a cool source edit inside from sum1 on the forums. and u dont feel like following his 3 page tutorial. So you use this program to have his code installed into your source automaticly.
>
> Atleast, thats what i get. i might be wrong.

I know that but how does it do it? At first, I thought it somehow inject the code in the source and compile it. Like an addon for Visual Basic 6.0 but now that I researched it, I think it basically "follow" the tutorial and put the code into the source but you have to have Visual Basic 6.0 running with the Source. Like a programming bot that do the programming(well…copy/paste) for you.

Sincerely,
Rithy
Link to comment
Share on other sites

:D

How much testing has this gone thru tho? Needs feedback. If you've tried this, plz tell soul if it worked or not. As long as this isnt bug free, it wont solve the "i cant install your code" problems.

Keep up the good work soul!

Warning - while you were typing a new reply has been posted. You may wish to review your post.
No. You dont need vb6 open. You run Soul's program and that program will open your SRC folder (source files) and output the codes into the right locations. You know u dont need vb6 for editing. A simple notepad application can open any mod files for example.

EDIT: opps damian beat me to it
Link to comment
Share on other sites

@Greendude120:

> How much testing has this gone thru tho? Needs feedback. If you've tried this, plz tell soul if it worked or not. As long as this isnt bug free, it wont solve the "i cant install your code" problems.

I've tested it some, although this is only one operating system in one event. The thing I use for testing is the hotbar fix by Robin, since I know it's always going to work and also that it's simple. The code is very simple. It's the simplicity for the developers I find hard to add. That's the point of the toolkit, to make it simple.
If anybody wants to test, check: [The Executable Repository](http://www.automata.freemmorpgmaker.com/repo/exe/). It's filled with pre-approved binaries.

@Rithy58:

> I know that but how does it do it? At first, I thought it somehow inject the code in the source and compile it. Like an addon for Visual Basic 6.0 but now that I researched it, I think it basically "follow" the tutorial and put the code into the source but you have to have Visual Basic 6.0 running with the Source. Like a programming bot that do the programming(well…copy/paste) for you.
>
> Sincerely,
> Rithy

It's told by the script writer to do any of the following commands: Open, Find, Add, Remove, Save and Close. Open starts a notepad process to the file they say, Find searches for what they specify in a certain direction, Add sends raw keypresses to Notepad so it types, Remove is the same thing as Find EXCEPT Remove deletes the text. Save and Close save the file or close it. The current system is basically a minefield of automation.

I might integrate it with VB6 at some point, just because I would be able to compile, plus the "Current Project" feature which would greatly ease simplicity. The C version will do this all behind the scenes (minus compiling) and thus make it very simple.
Link to comment
Share on other sites

I like the Idea, but personaly, if the code breaks under extream means later on I dont want to be stupid on how to fix it, with following tuts yu atleast ave aideaof how to go about fixing any problems later.

Also while this is a great revolution, another personal thing about it is that I love coding more than anything, why would i short cut it. ^_^ Great job, but ill just stick with whats funner to me.
Link to comment
Share on other sites

what happens if two source edits edit the same thing?  Say you have a source edit that makes NPCs able to cast spells, but then you have another Source Edit that makes NPCs  Heal themselves with a different spell?  It's a bad example, but I hope it gets the point across.
Link to comment
Share on other sites

To explain what frosty means:

The remove function in short, could remove a piece of code in a vanilla copy of EO but in another game it could remove an important edit made by someone. Making an edit for Automata is like presuming the person has nvr edited that part of the code in the first place. Has this thought been considered?
Link to comment
Share on other sites

@Greendude120:

> To explain what frosty means:
>
> The remove function in short, could remove a piece of code in a vanilla copy of EO but in another game it could remove an important edit made by someone. Making an edit for Automata is like presuming the person has nvr edited that part of the code in the first place. Has this thought been considered?

I'm only going to be using this for engine fixes, and maybe small edits. In my opinion, if you are using this for a massive tutorial, you are missing the point of what a tutorial is meant to be. ;]

EDIT: Ok, I've made a quick .au3 for my spells fix. I guess I have to include the functions linked in the main post with every tutorial? Also, how do you want me to give you the .au3, via PM or post?

Thanks,

Lightning
Link to comment
Share on other sites

@Damian: edit: thanks. I'm lazy. ;)

@Lightning: via Private Message. Just send the au3, I'll compile and throw it on the repo with the new version.

@Greendude/Frosty: the script will exit if a line that should be found could not be found, or if a file that should be removed could not be removed. The au3 script creator can choose to ignore an error by passing a parameter. In conjuncution with the backup system, it should fix most, if not all problems.

@RyokuHasu: the script does all the finding, removing, and adding infront of your very eyes. I may add ' automata (script name) comment to the code where automata changes stuff, but that's pretty messy. I'll probably add automata.log which logs everything that automata did.

Backup system and several fixes coming up soon. I'll add a guide next update.
Link to comment
Share on other sites

XtremeWorlds had this, really good for beginners. But automating source edits can sometimes break code and make it more of a niche environment, when this language is one of the easiest languages ever made.

I never made my sadscript tutorials to work with it in XtremeWorlds, can't say I will do it for this either. It's just a good way of making the community even more reliant on the people who know how to program.

I also would suggest using more defined areas, such as subs and functions within the program's opened file. If it doesn't do that already, just saying it doesn't due to seeing the code snippet in the repository.
Link to comment
Share on other sites

@Helladen:

> XtremeWorlds had this, really good for beginners. But automating source edits can sometimes break code and make it more of a niche environment, when this language is one of the easiest languages ever made.

For the most part, I agree with you here. Let me mention that this idea has been around for a LONG time. I actually got the idea from Linux distributions, such as Ubuntu/Debian's "apt-get". 

> I never made my sadscript tutorials to work with it in XtremeWorlds, can't say I will do it for this either. It's just a good way of making the community even more reliant on the people who know how to program.

Haha. Congratulations, you're paranoid. It's not intended to do anything like that. It's just automation, nothing will replace the value of coding it yourself.

> I also would suggest using more defined areas, such as subs and functions within the program's opened file. If it doesn't do that already, just saying it doesn't due to seeing the code snippet in the repository.

That's possible already, but I'll look into making more obvious.
```
Find ("Sub blablabla(bla bla bla)") ; this says to find the sub.
Find ("stuff", 1) ; this says find the next occurrence of stuff i.e., stuff in Sub blablabla.

```
Link to comment
Share on other sites

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
 Share


×
×
  • Create New...