Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. Red Dead Redemption 2

      1. PC
      2. Gameplay
      3. Missions
      4. Help & Support
    2. Red Dead Online

      1. Gameplay
      2. Find Lobbies & Outlaws
      3. Help & Support
      4. Frontier Pursuits
    1. Crews & Posses

      1. Recruitment
    2. Events

    1. GTA Online

      1. DLC
      2. Find Lobbies & Players
      3. Guides & Strategies
      4. Vehicles
      5. Content Creator
      6. Help & Support
      7. The Diamond Casino Heist
    2. Grand Theft Auto Series

    3. GTA 6

    4. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    5. GTA IV

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA IV Mods
    6. GTA Chinatown Wars

    7. GTA Vice City Stories

    8. GTA Liberty City Stories

    9. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA SA Mods
    10. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA VC Mods
    11. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA III Mods
    12. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    13. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    3. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption

    2. Rockstar Games

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Programming
      5. Movies & TV
      6. Music
      7. Sports
      8. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. News

    2. Forum Support

    3. Site Suggestions

Sign in to follow this  
flying sheep

coding mentality

Recommended Posts

flying sheep

hi,

i observed a funny tendency i would like to talk about. cleo scripts have to be compiled in order to run them. this, together with the enviroment most game scripters code in, did (in my opinion) lead to an interesting phenomenon.

 

first about the circumstances which drive the people to beharve like this (again, and for the rest of this post, i talk about my opinion alone):

cleo scripters mostly come from windows gaming, not programming. that means they only know closed source. they play a game they bought with an operating system they bought, too. mostly they use built-in tools or the free-but-closed-source notepad++. they manage to write and compile their first cleo script. now they want to show others their work because they are nice, want to find bugs or even show off. but they don’t release the souce code.

 

if you ask them why, the answer heared the most time is “because i don’t want anyone to steal it†(some even brand their work by including their name ingame, even if that means uglyfying the stuff). that’s funny, because their are whole operating systems, high end 3d FPSs and business programs which are released open source by hundreds of developers and nobody is afraid of anyone “stealing his/her workâ€. if they are the main developers, their name is in the fist comment on top of the source file, if they only contibuted a little bug-fix or speedup, they do not care if anyone knows that they did it (sometimes they add inline-comments if they feel very proud for some lines)

 

what is your opinion? are there really that many kiddis in the gta community that a open source script would be stolen as a whole and re-attributed by them? are the cleo developers really parsimonious and don’t want others to learn from their code? or, (i think this is the right answer) is there just no awareness of the advantages of open source?

 

PS: i don’t want to piss on somebody. if anyone feels offended, please tell me politely which part of the text is problematic. i’m no native speaker and it is likely that i did’t mean it like this. also, this forum offers great help for cleo scripters. but on most pages where cleo scripts are released, you can’t find much source code. that’s what i’m talking about.

PPS: this website doesn’t provide font encoding information. since i input utf-8, you should view this post with utf-8 decoding (in order to see apostrophes and such). for firefox users: select view > character encoding > auto detect > universal.

Edited by flying sheep

Share this post


Link to post
Share on other sites
TheSiggi

Do you have any knowledge about scriting? -no? I was right. suicidal.gif -.-

 

Sannybuilder has a decompile function, so everybody can open *.cs files!!!

 

2nd)

 

what is your opinion? are there really that many kiddis in the gta community that a open source script would be stolen as a whole and re-attributed by them? are the cleo developers really parsimonious and don’t want others to learn from their code? or, (i think this is the right answer) is there just no awareness of the advantages of open source?

 

this is not a discoussion thread confused.gif

 

3rd)

 

Mod stealing is realisim. you don't believe how often I've seen mods by ZAZ or Ryosuke posted on websites with authors who obevoiusly have no idea of coing

 

you're joking on your post scriptum, right?

 

suicidal.gifsuicidal.gif

 

man, you really should have learned .scm before writing such an useless post

Share this post


Link to post
Share on other sites
Dstrickt

 

Do you have any knowledge about scriting? -no? I was right.  suicidal.gif   -.-

 

This just summarized everything that post was about. sarcasm.gif

 

Seriously, whats the point of this? There is no need to release open source, cause you can just decompile the script with Sanny Builder to look inside.

Edited by Dstrickt

Share this post


Link to post
Share on other sites
Deji

The reason I never want to let people redistributing my mod is in case of future updates. If there are different random versions of my mod everywhere, no one will know what the latest one is or where to get it.

 

Another reason... if someone changes the script and cause it to be buggy or they redistribute a buggy version that I made, but fixed later... People would think that I'm just sending out buggy scripts and not bother with any other of my mods.

 

I take hours making these things, so I like to know that they are being played properly tounge.gif

 

 

I do try and release as much source as possible... but I insist that people read and learn from it (and maybe take bits from it) instead of stealing the whole thing... Which ruins the point of open source completely...

Share this post


Link to post
Share on other sites
james227uk

Mod stealers are the reason we brand out work. Those pricks out there who steal our work and take the credit

 

Oh, and what Deji said

 

 

Secondly, the section isn't for bullsh*t like yours. This section is for help with scripts people make

 

@Dstrickt

 

Partly true. The benefits of releasing the source is that you see the code how the author sees it. When compiled Sanny changes the script to work in game, such as removing comments, changing high level constructions into jf and similar, and renaming labels. Many long scripts look messy when decompiled compared to when they are source

 

 

Share this post


Link to post
Share on other sites
flying sheep

i knew you could decompile .cs files, but i did’t actually do it so you are right about the “first try it, then complain†stuff. but sorry, i don’t get it. do you all know what the difference between a compiled language and a scripting language is? there are three ways of compiling.

 

the first one is compilation to machine code. in this case you will gain nothing but the most basic instructions if you decompile. the complexity of the program is greatly enhanced this way and you will have difficulties to understand anything. don’t even think about seeing useful variable and function names or comments here. (decompile c++)

 

the second one is compilation into virtual machine code with or without annotations. it’s slower but you will get higher level code, loops and stuff. depending on the annotations saved with the code you even get variable and function names and comments (decompile python .pyc-files and java classes). but the code after the compilation will still not be the original one since highest level stuctures can’t be retrieved (list comprehensions and all the syntactical sugar). whitespace structuring is gone, too.

 

the third one is totally useless but would be the only way i can imagine that renders my post useless. it’s that the compiled file includes a losslessly compressed version of the complete source code, and it would be useless since cleo scripts are small and could be distriuted as source code and compiled in some split secons the first time the cleo library finds them.

 

if i err, please tell me why. also i write this long text since i’m currently on linux and can’t use sanny builder to test which quality the decompiled code has.

 

ok now to the other arguments:

@“code stealing is realityâ€: ok, i asked if it was that way and if you say that, it most likely is sad reality sad.gif

@“you joke in your psâ€: which one do you mean? actually i was serious on both. the second one is a bit confusing to me: if i edit my posts, they sometimes get reencoded to iso-8859-1. wtf?

@“redistributing buggy codeâ€: yea, that’s always the problem. but it’s the problem of these who take code without checking if it works first. if you redistribute big junks of code you should probably contact the main author and work together with him to implement the functionality you miss (i.e. send patches, mail him/her,…)

@“don’t steal the whole thingâ€: that’s a problem. since many don’t know what open source is, the probably don’t understand it (“hah dis dumbsh*t gave code awy hhaha lol me take it so im coll roflâ€)

 

seems like two of you did get pissed despite my PS… probably computer games really make agressive and jack thompson is right. wink.gif

 

PS: do i need [irony][/irony] tags for the previous sentence oO?

Share this post


Link to post
Share on other sites
james227uk

Stop being a retard and kindly gtfo. No one knows what the hell your talking about. You wanna chat about how Sanny should compile talk to Seemann

 

Couldn't even read a word you said because all I see is lots of TM and Euro signs all over your post

Share this post


Link to post
Share on other sites
NTAuthority
Sannybuilder has a decompile function, so everybody can open *.cs files!!!

Which does not do any control flow analysis nor keeps constant names and other such stuff which might be needed for more complex scripts.

 

 

this is not a discoussion thread  confused.gif

 

 

Oh, so forums are not meant for discussion, only for support? Odd.

 

 

Mod stealing is realisim. you don't believe how often I've seen mods by ZAZ or Ryosuke posted on websites with authors who obevoiusly have no idea of coing

 

 

Which is too bad, but those people are idiots anyway. Not worth doing anything about.

 

 

Secondly, the section isn't for bullsh*t like yours. This section is for help with scripts people make

 

 

What the... let me check the forum description:

 

 

Everything related to the GTA3/VC/SA main.scm and accompanying mission scripts, including opcodes, code snippets, algorithms and general scripting tips, can be found here.

 

 

'everything', 'including'. Nobody said there's no place for discussion, nor that this is a place for help. Even more so, the parent section 'III Modding' has this:

 

 

Discussions, documentation and questions on modding GTA IV belong in these forums.

 

 

If you haven't been trained to read, it says 'discussions'. This topic clearly is a discussion.

 

 

Another reason... if someone changes the script and cause it to be buggy or they redistribute a buggy version that I made, but fixed later... People would think that I'm just sending out buggy scripts and not bother with any other of my mods.

 

 

Well, people would redistribute compiled versions of code anyway, and if the modifier causes it to be buggy themselves, why would they associate it with you? And if you fixed it, the original was indeed buggy.

 

Oh, how I love comparing the mentality of the generic idiot coding GTA mods to the general programming community. smile.gif

 

 

The reason I never want to let people redistributing my mod is in case of future updates. If there are different random versions of my mod everywhere, no one will know what the latest one is or where to get it.

 

 

... obviously, linking to a web site is too hard? 'what the latest one is', helloooo, version numbers! Even more so, there are source licenses which you can use which require clear indication of a version being modified.

 

 

I do try and release as much source as possible... but I insist that people read and learn from it (and maybe take bits from it) instead of stealing the whole thing... Which ruins the point of open source completely...

 

 

Why would you redo something complex that's already been done? For Citizen for instance I reuse the Windshield HUD modification with specific modifications to fit better in Citizen. Without the documented source code these modifications would be almost impossible.

 

Now, to the point of the OP:

 

 

cleo scripters mostly come from windows gaming, not programming. that means they only know closed source. they play a game they bought with an operating system they bought, too. mostly they use built-in tools or the free-but-closed-source notepad++. they manage to write and compile their first cleo script. now they want to show others their work because they are nice, want to find bugs or even show off. but they don’t release the souce code.

 

 

Well, you are likely an avid Linux user, are you? Also, Notepad++ is actually open-source, but nobody uses it for GTA modification because they're using the specifically made (closed source and out-of-development, yay! :\ ) Sanny Builder crapvironment. I, too, am annoyed about some people not releasing source code for things where can be wondered 'how do they do that? I've tried!'... especially in this undocumented world relying on community documentation.

 

 

if you ask them why, the answer heared the most time is "because i don't want anyone to steal it" (some even brand their work by including their name ingame, even if that means uglyfying the stuff). that's funny, because their are whole operating systems, high end 3d FPSs and business programs which are released open source by hundreds of developers and nobody is afraid of anyone "stealing his/her work". if they are the main developers, their name is in the fist comment on top of the source file, if they only contibuted a little bug-fix or speedup, they do not care if anyone knows that they did it (sometimes they add inline-comments if they feel very proud for some lines)

 

 

Indeed, that's another thing I do not understand about the mentality of GTA modders. Another nice thing to see is a discussion about using a file format. The original mod developer failed to see that that editor program is not doing anything with the mod itself, and especially how they are reluctant for any third-party improvement, and calling it 'stealing', 'using other people's work' and 'taking over our project'. Now, luckily they can't do anything about the still-secret project I'm doing based on DYOM intel.

 

 

what is your opinion? are there really that many kiddis in the gta community that a open source script would be stolen as a whole and re-attributed by them? are the cleo developers really parsimonious and don’t want others to learn from their code? or, (i think this is the right answer) is there just no awareness of the advantages of open source?

 

 

1. Yes, even re-using a single line of code could be seen as 'stealing' with this mentality.

2. Indeed.

3. Nah, don't think so. Or perhaps it is, since many haven't even seen actual if statements seeing for instance james227uk and 'coding genious' (sic) ZAZ.

 

 

PS: i don’t want to piss on somebody. if anyone feels offended, please tell me politely which part of the text is problematic. i’m no native speaker and it is likely that i did’t mean it like this. also, this forum offers great help for cleo scripters. but on most pages where cleo scripts are released, you can’t find much source code. that’s what i’m talking about.

 

 

Most people here are easily offended, it's likely not an language issue... though I also thought it to be, many people here are just idiots. And indeed, the fact there's no actual source code information informing about common tasks, nor centralized documentation that's actually used is something I don't understand.

 

 

PPS: this website doesn’t provide font encoding information. since i input utf-8, you should view this post with utf-8 decoding (in order to see apostrophes and such). for firefox users: select view > character encoding > auto detect > universal.

 

 

Thanks - now I have two examples in the past week of the not using of any encoding header on this web site. Hope it doesn't end up like the last time.

 

P.S. yes, I'm using ISO-8859-1 for this page's display, but mostly because of some pairs on this site that don't look correct with UTF-8 mode. oddly, some localizations of Firefox default to UTF-8, while most other browsers default to ISO-8859-1 if no encoding header is provided.

Share this post


Link to post
Share on other sites
NTAuthority
i knew you could decompile .cs files, but i did’t actually do it so you are right about the “first try it, then complain†stuff. but sorry, i don’t get it. do you all know what the difference between a compiled language and a scripting language is? there are three ways of compiling.

SA 'SCM' objects are more of odd bytecode than the usual stack-based assembly, oddly.

 

 

the first one is compilation to machine code. in this case you will gain nothing but the most basic instructions if you decompile. the complexity of the program is greatly enhanced this way and you will have difficulties to understand anything. don’t even think about seeing useful variable and function names or comments here. (decompile c++)

 

 

The Sanny Builder code format is, thankfully, already very similar to assembler-style code, mostly line-by-line processing.

 

 

the second one is compilation into virtual machine code with or without annotations. it’s slower but you will get higher level code, loops and stuff. depending on the annotations saved with the code you even get variable and function names and comments (decompile python .pyc-files and java classes). but the code after the compilation will still not be the original one since highest level stuctures can’t be retrieved (list comprehensions and all the syntactical sugar). whitespace structuring is gone, too.

 

 

Which is actually very similar to x86 assembly, but more like the structure of the source language. Sanny Builder and even Rockstar's GTA3 .sc compiler are line-by-line compiled, and don't have any structure, so the SCM objects are pretty similar. The only thing that is done is translation of control structures and removal of names, though Sanny does store some names in compiled files, optionally. Most people disable it to make their source more unreadable, however.

 

 

the third one is totally useless but would be the only way i can imagine that renders my post useless. it’s that the compiled file includes a losslessly compressed version of the complete source code, and it would be useless since cleo scripts are small and could be distriuted as source code and compiled in some split secons the first time the cleo library finds them.

 

 

Correct. Especially since CLEO is made by the same person as the Sanny compiler, I don't know why he didn't do this. SCRunner will, on the other hand, include a full version of my SCompile compiler to also support direct compilation of source files. wink.gif

 

 

if i err, please tell me why. also i write this long text since i’m currently on linux and can’t use sanny builder to test which quality the decompiled code has.

 

 

Unless it's crap, it should work on WINE.

 

 

ok now to the other arguments:

@“code stealing is realityâ€: ok, i asked if it was that way and if you say that, it most likely is sad reality sad.gif

 

 

Never seen it happen too much.

 

 

@“you joke in your psâ€: which one do you mean? actually i was serious on both. the second one is a bit confusing to me: if i edit my posts, they sometimes get reencoded to iso-8859-1. wtf?

 

 

Indeed, those are bugs in this forum software, and james227uk doesn't seem to understand it and nitpick about these encoding issues constantly.

 

 

@“redistributing buggy codeâ€: yea, that’s always the problem. but it’s the problem of these who take code without checking if it works first. if you redistribute big junks of code you should probably contact the main author and work together with him to implement the functionality you miss (i.e. send patches, mail him/her,…)

 

 

difference in mentality

 

 

@“don’t steal the whole thingâ€: that’s a problem. since many don’t know what open source is, the probably don’t understand it (“hah dis dumbsh*t gave code awy hhaha lol me take it so im coll roflâ€)

 

 

Well, that problem still exists. Too bad nobody would sue someone over a game modification.

 

 

Stop being a retard and kindly gtfo. No one knows what the hell your talking about. You wanna chat about how Sanny should compile talk to Seemann

 

 

You, the same.

 

 

Couldn't even read a word you said because all I see is lots of TM and Euro signs all over your post

 

 

I explained that to you 1-2 days ago. Don't make me state it again.

Share this post


Link to post
Share on other sites
james227uk

dozingoff.gif

 

Forum error or not, I simply just cannot read it. Constantly? Open your eyes, I have mentioned it twice. Something constantly mentioned is your "citizen" stuff. Compare and you'll find the difference

 

The fact is, this topic isn't really a discussion. It's you taking digs at me and correcting even simple things as usual . This topic doesn't even have a set discussion. First is was no source code, now it's compiling

 

 

Indeed, those are bugs in this forum software, and james227uk doesn't seem to understand it and nitpick about these encoding issues constantly.

 

 

You, the same.

 

 

3. Nah, don't think so. Or perhaps it is, since many haven't even seen actual if statements seeing for instance james227uk  and 'coding genious' (sic) ZAZ.

 

 

If these constant digs at me, and other members continue, I'm reporting. ZAZ, unlike you and most, keeps to the core, not using code hooks, and still never ceases to amaze with his scripts.

 

Now bring this to PM icon14.gif

 

Share this post


Link to post
Share on other sites
flying sheep

NTAuthority, wow, thanks for actually answering me. my first post is the nicest rant i ever made but i met aggression from the start. thanks for showing me the error was not on my part. i have a linux installation for almost every task and a windows installation for gaming, so i never use wine. i am programming currently so i can’t use windows (linux is just so much easier to use and doesn’t provoke agression against my computer wink.gif)

 

it’s sad that the mentality is like this. microsoft surely has placed it’s seed in some heads here. i wish everyone guarding his/her code the best of luck. maybe you will program in a team some day and learn the advantages of sharing.

 

could you tell me more about scrunner? i only found a old post of you: “To those not knowing, SCRunner is an alternative to CLEO's 'external script loader' in development, supporting amongst other things 1024 local variables everywhere and never crashing the game (instead, logging errors including the opcode which caused them).”

 

@james: excuse me, but a small field trip explaining stuff in order to make your arguments better understandable does in no way mean “there is no discussion”. if you din’t notice: you are already discussing with me and NTAuthority.

Share this post


Link to post
Share on other sites
Deji

Jeesh this topic has derailed... I have nothing wrong with the original posters core point. Yet I still hold my own opinions on the matter. There's no need to start throwing insults all over the place.

 

 

Chiillll.... Dude?

 

 

And yeah... this forum can include discussion topics. Something which I find rather lacking... Maybe if we talked more, we'd be better modders tounge2.gif I always feel this constant heat between certain modders, too... Without anyone even saying anything...

Share this post


Link to post
Share on other sites
NTAuthority

 

Forum error or not, I simply just cannot read it. Constantly? Open your eyes, I have mentioned it twice. Something constantly mentioned is your "citizen" stuff. Compare and you'll find the difference

Twice in a pretty short time, that's true. Anyway, I usually continuously say 'constantly' for everything... even if not. Referring to Citizen, well, it shouldn't be _that_ much, is it? :|

 

 

The fact is, this topic isn't really a discussion. It's you taking digs at me and correcting even simple things as usual . This topic doesn't even have a set discussion. First is was no source code, now it's compiling

 

 

The first post was already about 'compiled code', and the point about it being about compiling is that, if it were compiled on-the-fly, source code would already be available. Most Lua code is also distributed as source code, though many applications also support running compiled code.

 

 

If these constant digs at me, and other members continue, I'm reporting. ZAZ, unlike you and most, keeps to the core, not using code hooks, and still never ceases to amaze with his scripts.

 

Many of his scripts, like most other SA scripts I've seen released lately (unlike the older scripts, those still rock!) are part of the 'useless feature' crowd, which oddly seems to be almost every SA player. Odd. The 'constant digs', well, this time it's actually constant, though I'm more seeing people just disregarding and questioning my advice, and giving bad advice in its place... or just ignoring technical fact and giving the blame to other people. As to the topic, it's just that I'm not used to the 'simplicity over everything' mentality over here. Personally, I do not like working with the Sanny compiler, and I have been planning on making my own just for the possibility.

 

The use of code hooks, well, you all seem to discount cleo.asi as being one. And anyway, what's wrong with it, actually? I might just be annoyed at Sanny's compiler because of 1) the misuse of some things and 2) the fact that most Sanny code is just very unclean and inconsistent, which I've also seen at the tiny amount of code I wrote with it before moving to script hooks 1.5 months after starting coding on SA. It's just my personal preference, and all of you seem to attack it. smile.gif

 

Now bring this to PM  icon14.gif

 

 

I don't like using PMs for such discussions, and rather wish not to have them instead. The (in my opinion) useless inbox count limit on most forum's PM systems and them not providing an option to easily save old messages is also something helping with that.

 

... blgh, I'm sweaty from all this. let me take a while off smile.gif

 

EDIT: since this part doesn't annoy me, let's take the topic back on the road.

 

 

NTAuthority, wow, thanks for actually answering me. my first post is the nicest rant i ever made but i met aggression from the start. thanks for showing me the error was not on my part. i have a linux installation for almost every task and a windows installation for gaming, so i never use wine. i am programming currently so i can’t use windows (linux is just so much easier to use and doesn’t provoke agression against my computer )

 

 

I personally prefer Microsoft's CLR for most things, and the fact that many things I do are with C++/CLI mixed-mode things which gcc doesn't support (nor Mono, nor anything outside of WinNT/WinCE) I actually use Windows most of the time. Also, the only thing I'm annoyed about Windows is that the SMB driver has a tendency to crash... wait, wasn't I supposed to put the topic back on the road?

 

 

it’s sad that the mentality is like this. microsoft surely has placed it’s seed in some heads here. i wish everyone guarding his/her code the best of luck. maybe you will program in a team some day and learn the advantages of sharing.

 

 

Most team development attempts I've made, I disliked. However, in a community-documented world like the GTA world, sharing is even more caring than in the usual programming world! Keep that in mind, all ya' beginning developers! smile.gif

 

 

could you tell me more about scrunner? i only found a old post of you: “To those not knowing, SCRunner is an alternative to CLEO's 'external script loader' in development, supporting amongst other things 1024 local variables everywhere and never crashing the game (instead, logging errors including the opcode which caused them).”

 

 

Well, SCRunner is a re-implementation of the code in GTA3 engines which runs the .scm (and .cs, thereby) file formats, which are very simple. Unlike CLEO, which redirects even 'if' calls to the gta_sa.exe code, my wrapper re-implements these itself, only keeping the commands which interact with the game existing. It's also based on my next-generation 'GTAScriptHook' managed CLR scripting environment, due to which it inherits a lot of its advances. Due to it not being bound to the usual limits, like CLEO, I have for instance indeed increased the maximum number of variables (32 is really a bit tiny wink.gif ). Since the CLR can also catch the AccessViolationException (SIGSEGV for you) when calling wrong commands pretty cleanly, I can also log any script error while making the game continue to run. It also contains some new commands which make use of its new features, which can cause more clean compiled code.

 

SCompile/SCDev is a set of compiler (C compiler-style, with a frontend, assembler and linker) and a corresponding IDE for a reconstruction of the original GTA3 .sc language (for an example, see data\main.sc in SA and/or data\main.sc and data\debug.sc in GTA VC -- IV has a totally different language) which, thanks to SCRunner, is not bound only to GTA: San Andreas but can also be used in Bully, GTA IV and even custom applications. It will also integrate in SCRunner even more by SCRunner distributing the compiler package and possibly compiling at runtime (and keeping compatibility with CLEO smile.gif ), and SCDev providing a script debugger (networked, since SA takes exclusive focus and hanging the process will cause issues) to do debugging like you're used from C/C++/C# with GTA (and other of those games, obviously) scripts.

 

The main obstacle holding SCompile back is the lack of interest to map all the known command IDs to the list of original command names taken from GTA IV... oh, and existing people not liking to re-learn everything. I think the most popularity of the SC tools will be on the Bully scripting side, since for that the only other alternative I will offer is a .NET scripting hook.

Edited by NTAuthority

Share this post


Link to post
Share on other sites
james227uk

But what's the real problem with the compiler? It gets the job done and compiles successfully

 

And if you did make your own, what syntax would it use. Your favourite or SAs?

Share this post


Link to post
Share on other sites
flying sheep

oh, i’m about 100 degrees more chilled than i suspect james would be if i told him to “gtfo” because he had a different opinion than me. don’t you all agree?

 

and please back to topic: is there anything we can do in order to encourage scripters to behave like programmers: releasing souce code, working togeter, using version control or at least version numbers, establish a central repository (with additional commenting, screenshots, rating and tagging)…

 

especially the last point would be great as it rids everyone of many problems:

you can tell the original author of a certain script by looking at the date and username of the first contribution of this script.

version control and collaboration (patching and discussion) would be easy.

you don’t have to look on 265 places to find scripts.

 

but someone has to code this and i don’t think establishing it would be easy because of the previously mentioned mentality differences…

Share this post


Link to post
Share on other sites
NTAuthority
And if you did make your own, what syntax would it use. Your favourite or SAs?

It'd use SA's syntax. Sanny is not SA's syntax, it's an improvement to the Mission Builder assembly syntax, and not an attempt to remake the .sc data (which it couldn't have been I think, since .sc was only shown in VC and the first Mission Builder was for GTA3)

 

 

and please back to topic: is there anything we can do in order to encourage scripters to behave like programmers: releasing souce code, working togeter, using version control or at least version numbers, establish a central repository (with additional commenting, screenshots, rating and tagging)…

 

 

I'm declaring GTA a lost cause for doing so to the community. SA because of the huge existing community and stubborn people, IV because of the ton of existing tools (and me disliking the workings of aru's script hook) and the lack of interest in the model formats. Perhaps there'll be a chance in Bully, even though it's old and was a semi-buggy port, there does seem to be some interest in scripting possibilities. The only 'central repository' for SA seems to be GTAGarage, and that's not exactly meant for a programmer's perspective.

 

Citizen will be a huge break with the normal definition of a GTA modification, and I still don't know how people will like it... since it's made to, citing the commonly graphics-horny (stereotypical) PC gamers, 'a game which is 6 years old. come on, who wants such old crap? even CoD4 is too old!'. tounge.gif Oh, how the GTA world would have been if R* was more like Valve, releasing a C++ plugin API, and other tooling. sad.gif

 

 

especially the last point would be great as it rids everyone of many problems:

you can tell the original author of a certain script by looking at the date and username of the first contribution of this script.

version control and collaboration (patching and discussion) would be easy.

you don’t have to look on 265 places to find scripts.

 

 

Indeed, it could be a pretty nice thingy. And by the way, isn't it for everything that there's no 'central' service for stuff, not even for OSS?

 

 

but someone has to code this and i don’t think establishing it would be easy because of the previously mentioned mentality differences…

 

 

My interest in web programming is gone for a bit, and I don't think it'll come back too easily. Also, as I stated again, indeed, the mentality differences.... sad.gif

Share this post


Link to post
Share on other sites
flying sheep

launchpad is pretty central for ubuntu developing. by the way: is anybody apart from me and ntauthority a “real” programmer (knows a general purpose programming language pretty well)?

 

the concept of scrunner seems very promising, how is the progress so far? (i know you just said the interest in mapping scompile function names to builtin functions is not very high, but maybe the advantages will convince the programmers among the scripters when it’s ready =))

Share this post


Link to post
Share on other sites
spaceeinstein

whatsthat.gif 502 Bad Gateway

 

 

it's sad that the mentality is like this. microsoft surely has placed it's seed in some heads here.

I'm really bothered by this. I never knew using Microsoft or Apple products create these kinds of behavior. Do you think it's human nature or culture that make people want to safeguard there precious "property"?

 

I do believe open source is good. But I think it's not just the GTA community or Microsoft that acts like this. I think it's either human nature or culture that make people want to brand their products. Not everyone think alike and many people are influenced by group mentality. American society right now brands lots of their products. All these acceptance trickle down to the ordinary citizen who also want to safeguard "their work." I think bringing this up in 2010 instead of 2004 is too late. Once the norm is established, it's hard to break it.

 

I'm looking forward to SCRunner. It's nice that there are new things coming up for a game this old.

 

 

Edited by spaceeinstein

Share this post


Link to post
Share on other sites
nerner

I never code in groups. Not after Trickstar34 shat on me from a great height. Glad he got banned. He was an utter knobhead.

 

What is SA's natural syntax then NTAuthority?

Share this post


Link to post
Share on other sites
spaceeinstein

Look at the main.sc file.

Share this post


Link to post
Share on other sites
flying sheep

hmm, i’m a socialist so i can’t really believe such behaviour is human nature wink.gif

 

of course you are right. i didn’t express myself properly (as previously stated, i’m no native speaker). not microsoft makes people think like this, but never trying anything else does. if somebody never used linux, never felt the freedom of being able to look at and change every aspect of the software (s)he uses, (s)he will probably never want to that. if this person never saw foreign code outside of the tutorial scripts (s)he will probably think everyone prevents others from looking at his/her code if it does not have to be distibuted.

 

and then, if this person is accustomed to behaving like that, (s)he will defend this behavior from others querying it. just like religious people: they sometime started believing in sth., then they keep doing stuff in this spirit and if someone queries their belief, they defend it since they can’t admit they just did all this out of habit. wink.gif

Share this post


Link to post
Share on other sites
TheSiggi

 

hmm, i’m a socialist so i can’t really believe such behaviour is human nature

 

you better should be a antropologist to judge about this and indeed it is a human drive to protect property

I know this topic led to flaming and also know that I aid it

 

Share this post


Link to post
Share on other sites
Seemann

@flying sheep: just keep in mind that scripting and programming are way too different. Changing some lines of original code (main.scm'ing) or adding them in a new file (cleo'ing) is not a real programming you got accustomed to. Do we really need a 'central repository' if all we are working with are two thousand opcodes, most of them being named and documented? And I don't think it's correct to compare closed-source software and cleo scripts, as the latter could easily be decompiled (most of the scripts are written without comments and proper naming of the variables, so lack of the original source is not a big issue).

 

@NTAuthority: I see you keep advertising your projects. Well, I disliked Mission Builder when I worked with it years ago 'cause it was a real "crapvironment". But I did not spam over the boards blaming it. I just sat and made my own program, which is, after years, the only program for scripting. If you're going to make something better than SB\CLEO, go on, do it. We will see.

 

And answering to flying sheep, I'm not a professional programmer. SB was one of the first ever programms I wrote. It was something like "scripter to scripter" contribution to the modding scene. smile.gif

Share this post


Link to post
Share on other sites
Deji

@spaceeinstein

 

Seeing the main.sc really excited me. I got to see how Rockstar coded their scripts. It'd be cool for there to be a compiler that works like theirs did.

 

People seem to forget, though... Sanny files can be edited to add shortcuts, classes and whatnot... So people could recreate something similar. Only a few extra things are different. And in these things, I usually favor Sanny's syntax. Though Sanny could do with adding formatting to constants tounge.gif So yeh know you've typed it right and all..

 

---

 

Although I don't mind opcodes... And Sanny meets all my requirements for making a script. The only thing I'd change is the capabilities of the .scm and maybe CLEO... But then again... That's not up to me.

 

Unfortunately I'm not clever enough to have a say in those things tounge.gif Otherwise I'd be making my own hooks and such. But I'm kinda being a slacker due to the complexity of C++. Now I DO dislike it's syntax... And it's seemingly odd over complications make me impatient with it...

 

And the whole "you are new to coding... you will have all the really basic stuff described" in tutorials gets on my nerves... Mainly because shortly after that it jumps to a "you should know what everything here means now!" rather quickly.

 

Also... The code in tutorials never seems to work when I compile it. What is the point of an inconsistent language? whatsthat.gif

 

Guess that's just my peeves about C++. Once I learn it I might appreciate it more.

 

 

@flying sheep

 

I'd consider any action performed by a human to be human nature... We do it, it's natural (in the fact that it exists) and we're humans...

 

 

@Seeman.

 

Aww... I wanted to be known as a programmer for making CLEO's... Makes me sound cool.

 

Oh well. I'm still a "web programmer".

 

Sidenote... Please don't tease me with that CLEO 4 thing wow.gifbiggrin.giftounge.gif

Edited by Deji

Share this post


Link to post
Share on other sites
TheSiggi

@NTAuthority: I see you keep advertising your projects. Well, I disliked Mission Builder when I worked with it years ago 'cause it was a real "crapvironment". But I did not spam over the boards blaming it. I just sat and made my own program, which is, after years, the only program for scripting. If you're going to make something better than SB\CLEO, go on, do it. We will see.

 

Thats definately one of the wiseset things I've ever heared on gtaforums

 

I really don't get why there should be an alternative to CLEO and of course Sannybuilder....

 

SB is fast, relieble (never had problems with it) and it comes with a couple of real programming elements like the three differnt types of loops and the new opcodes for CLEO

 

@NTAuthority:

Yes, I'm looking forward to test your SCrunner but it won't replace SB for me, so this not an offence

 

 

 

And answering to flying sheep, I'm not a professional programmer. SB was one of the first ever programms I wrote. It was something like "scripter to scripter" contribution to the modding scene.
Incredible, thought your

were an

professional programmer because SB is so complex and I really enjoy working with it

Edited by The_Siggi

Share this post


Link to post
Share on other sites
NTAuthority

 

@flying sheep: just keep in mind that scripting and programming are way too different. Changing some lines of original code (main.scm'ing) or adding them in a new file (cleo'ing) is not a real programming you got accustomed to. Do we really need a 'central repository' if all we are working with are two thousand opcodes, most of them being named and documented? And I don't think it's correct to compare closed-source software and cleo scripts, as the latter could easily be decompiled (most of the scripts are written without comments and proper naming of the variables, so lack of the original source is not a big issue).

Though many scripts are quite complex, it's still a limited scripting engine to work with. Think of it - some things that could have been implemented as script functions, but were too complex, were hardcoded in the game engine. For instance, the rampage code is completely managed by the game engine, and without guessing handle IDs which leads to bad performance, impossible to do outside of manually using the pool functions. Annoyingly, exactly the time when I decided to use some script-based memory stuff to check the pools, I got weird inconsistent results, but that's another story.

 

The coding style and SCM being meant for line-by-line compilation indeed helps with neatly disassembling the code, though sadly Sanny doesn't do control flow analysis, which still wouldn't make it look nice. tounge.gif The results of using Reflector on MSIL code are more easier to look at than disassembled script code, even with more advanced disassemblers. Or that's just because most source code is ugly. smile.gif

 

 

@NTAuthority: I see you keep advertising your projects. Well, I disliked Mission Builder when I worked with it years ago 'cause it was a real "crapvironment". But I did not spam over the boards blaming it. I just sat and made my own program, which is, after years, the only program for scripting. If you're going to make something better than SB\CLEO, go on, do it. We will see.

 

 

Wait, did I really say 'crapvironment'? Looking back, this was indeed in the initial angry reply which even initiated a flame war, my choice of words is sometimes a bit bad. smile.gif Sanny is a huge improvement over Mission Builder, that's an accomplishment I still feel is important. I wouldn't have started with SA modding if I had to use MB. wink.gif

 

Also, I'm not blaming the application itself, nor the compiler, it's just that most people use it as if it still was Mission Builder... without the main readability features. I know you had to keep in mind the people used to MB and other raw methods of coding, but oddly, still people use those features in scripts they write themselves. Also, I'm not exactly posting stuff 'all over the boards', I've only made two references to the 'SCTools' set.

 

These tools have an completely different purpose to the Sanny/CLEO toolset. Yes, they both use the same compiled format, but it's not meant to be an replacement, just an alternative. For instance, completely replacing the runtime allows me to easily add an script debugger, which can help reduce issue solving time. It's one of the annoyances I have with the traditional method of coding. Also, even though it's another case of legacy (and earlier programs which tried to replace it failed) I feel just adding the command ID everywhere can be a bit redundant.

 

However, I still respect the use of Sanny, and I'm planning to have my command documentation system also output a classes.db file for Sanny, which can give a clean coding style without breaking backwards compatibility. Also, again, the SCTools are not meant to replace Sanny/CLEO, it's just to give a more high-level environment as an alternative.

 

By the way, is there any place I can report a bug for CLEO? I've yet to see the issue documented publicly, but it seems to be a major gripe with using CLEO, making it impossible for certain script types. (related to the save routine)

 

 

Seeing the main.sc really excited me. I got to see how Rockstar coded their scripts. It'd be cool for there to be a compiler that works like theirs did.

 

 

That's exactly the reason I came up with the .sc compiler idea some time ago... even if nobody'd use it. wink.gif

 

 

People seem to forget, though... Sanny files can be edited to add shortcuts, classes and whatnot... So people could recreate something similar. Only a few extra things are different. And in these things, I usually favor Sanny's syntax. Though Sanny could do with adding formatting to constants  So yeh know you've typed it right and all..

 

 

Indeed, with a classes.db file (as mentioned above), a standard constants include file, and some other stuff, it could be extended to be quite as usable (or even more) as the actual .sc language. (though one tiny thing I like about .sc is that you declare a variable name and its type at once. how many times I haven't forgotten to add my variable to Sanny's var ... end directives tounge.gif )

 

 

Although I don't mind opcodes... And Sanny meets all my requirements for making a script.

 

 

It's just an alternative. Isn't that what the software world is all about? Think of it, what if for every purpose there was only one single program in existence?

 

 

But I'm kinda being a slacker due to the complexity of C++. Now I DO dislike it's syntax... And it's seemingly odd over complications make me impatient with it...

 

 

I also don't like C++, that's why I made a CLR wrapper to the GTA script functions. Perhaps I'm just spoiled by the perfect auto-completion used by Visual Studio for .NET code. tounge.gif

 

 

And the whole "you are new to coding... you will have all the really basic stuff described" in tutorials gets on my nerves... Mainly because shortly after that it jumps to a "you should know what everything here means now!" rather quickly.

 

 

The 'Mission Coding for Dummies' tutorial also is so odd. They start with a basic definition of threading and simple goto commands, then using the (they should be deprecated!) jump_if_false commands, and without any definition use the usual if/then structures. If none of the tutorial explains them, it's obvious people don't use them!

 

And for other programming languages, I never use tutorials for them. I just experiment with editing code, then go and write some tiny things looking for things on Google in reference manuals, but that's just because that's the way I prefer to learn things.

 

 

Also... The code in tutorials never seems to work when I compile it. What is the point of an inconsistent language? 

 

 

C/C++ are consistent, but there are two main groups: MSVC and gcc. gcc keeps to the main standard, MSVC adds custom things, but gcc uses things like 'uint8_t' by default, where MSVC expects you to use windows.h for things where it's named 'BYTE'. And then there are the usual named constants like 'unsigned char' or 'char' which usually defaults to 'unsigned' but some compilers call it 'signed'.

 

 

Aww... I wanted to be known as a programmer for making CLEO's... Makes me sound cool.

 

Oh well. I'm still a "web programmer".

 

 

Some people also think PHP's not a programming language. Like Sanny's syntax, there are tons of different ways to do everything, and most people use the simple-but-very-incorrect way. Just like using unnamed variables and 'jump_if_false's would.

 

 

Sidenote... Please don't tease me with that CLEO 4 thing  

 

 

I'm also pretty interested at what the new features would be in the 'next version' of CLEO... even though I don't know what could be added except for one of four things:

 

1) replace the normal Process call with a custom loop abstracting certain things (only way to get more than 32 vars per script)

2) support for the SAv2 main menu code

3) 'FindFirstPed/FindNextPed' pool traversal functions

4) ... wait, I forgot what the fourth thing was! sad.gif

 

 

I really don't get why there should be an alternative to CLEO and of course Sannybuilder....

 

Because it's possible. smile.gif Why should there be an alternative to the MSIE browser? It's reliable, many people never have problems with it (except governments), and it comes with tabbed browsing, extensibility and a search box! (get the analogy?)

 

 

and it comes with a couple of real programming elements like the three differnt types of loops and the new opcodes for CLEO

 

The new CLEO opcodes are just a case of bundling, not exactly something only Sanny can use (you could even use MB for them). Without the loops (which are a must-have), I'd have been annoyed at Sanny so much I wouldn't even have started modding GTA. tounge.gif

 

As I said before in this topic, the 'stubbornness' of people here can certainly be off-putting.

 

EDIT:

 

 

@NTAuthority:

Yes, I'm looking forward to test your SCrunner but it won't replace SB for me, so this not an offence

 

 

As I said above, I do not expect the SCTools to replace anything. Also, SCRunner is an replacement for the .cs loader of CLEO, not a replacement for SB. In fact, there's a specific compatibility thing to simplify use with SB ('abusing' script.img) since SCDev/SCompile is not even finished. wink.gif

Edited by NTAuthority

Share this post


Link to post
Share on other sites
ceedj

Just my own $0.02 (or USD equivalent), but I'm amused that R* has been using essentially the same scripting engine for about 10 years. You'd think that by now, they'd come up with a function that automatically checks if the player is defined.

 

Really??? Is_Player_Defined/Playing(IV)??? Don't get me wrong, I love the games, but I gotta chuckle at stuff like that. lol.gif

Share this post


Link to post
Share on other sites
Deji

I was surprised at how many things are controlled by the .scm.

 

 

But my biggest amusement ever was seeing the official San Andreas website (the PC one) where there displayed something like "player mod support".

 

HA!

 

There is absolutely no support for it since 2.0. But I never recall "support" for it before either... They are using us as a selling point. Feels good.. But where's my money or support tounge.gif

 

Not only does it say that on one page... But in full it says:

 

 

 

 

Player Modifications

support, giving PC

gamers the opportunity

to create their own world

within San Andreas.

(* Please note this feature

may be limited in the

second edition v2.0 release)

 

 

 

Support would be if they told us how to open up the files and change things... True enough they leave the comments in the data files.. But that's all.

Share this post


Link to post
Share on other sites
james227uk

The game does support modding. There are some games out there that refuse to work after being modded. GTA will still work after being modded, so in a basic sense it supports modding

Share this post


Link to post
Share on other sites
Deji

That's called compatibility... It's compatible with modding. But there's no "support" of any kind.

 

Support would be something like an interface that allows you to choose different skins (like in Vice City and III, I believe) that are dropped in a folder or since they go to the extremes of saying "create your own world within San Andreas" the abilities to load different maps and such... But none of that exists.

 

And if people weren't clever enough to make programs that open the .img and .txd files as well as making programs or plugins to allow 3D tools to open .dff files... We'd never even have the simplest of mods... Well.. More complex than the .dat files... Which are easier to mod providing you have infinite patience or again... a tool.

 

It shouldn't take a programmer to be able to mod a game if it supports modding... That's my view.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.