:
Destination Time
:
Present Time
:
Last Time Departed

bluespace88

Mod Team
  • Content Count

    3,193
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by bluespace88


  1. heißt "lies das verfi**te Handbuch", falls noch nicht bekannt ;).

    (The above is just a translation of the English long form of that acronym)

    Since we already talk about general stuff, why couldn't/shouldn't we use global variables in CLEO threads? I always thought it had something to do with memory addresses (when compiled, the variable names aren't there anymore but pointers to their memory addresses), but I lately got confused when I could check and change globals from a *.cs in the main.scm. Anyone around here has an explanation for me :D?

    CLEO doesn't know what global variables are in use in the main.scm, and even though it has a name, internally, its given a number like $1539 which represents which are in memory it has, but since CLEO doesn't know which parts of memory are in use, it can easily change one in use by main.scm and sometimes its a critical one that will crash the game. Like saving a number to a variable that represents an object.


  2. the reason it is not coded in is because....if one car has it, the 100+ other cars need it too, and to specify 3 lines each for front and back signals (left and right are mirrored), it requires 600 lines of code, which takes 10 bytes each, so thats 6000 bytes of code added, just for defining where they are (2 byte opcode, 4 byte variable, 4 byte number). Thats 6,000 taken out of 225,512 bytes total, and it was that, plus the tedious work of finding where the blinkers on each car, that it was never pursued. This does not include the actual creation of the corona and work to make it non lagging and also mirror each one, and the code to activate them, plus the code to make them blink.


  3. Write opcodes

    This option turns the decompiling output from high-level to low-level and vice versa. If this option is unchecked, the decompiler uses available classes and keywords instead of opcodes. In addition, there are no opcodes for simple math expressions. If option checked, all opcodes are present in the output file.

    Lets say you write a simple .cs script that creates a car (don't bother running it, it'll crash. Its simplified to make things a bit easier.

    {$VERSION 3.1.0027}
    
    {$CLEO .cs}
    
    
    
    thread 'SPAWN'
    
    :Spawn
    
    if 
    
       Player.Defined($PLAYER_CHAR)
    
    jf @Spawn 
    
    0@ = Car.Create(#BULLET, 1@, 2@, 3@)
    
    Car.RemoveReferences(0@)   
    
    0A93: end_custom_thread
    Then you compile it. The Write opcode works when decompiling. When its unchecked, the decompiled code looks like this.
    // This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
    
    
    
    {$VERSION 3.1.0027}
    
    {$CLEO .cs}
    
    
    
    //-------------MAIN---------------
    
    thread 'SPAWN' 
    
    
    
    :SPAWN_11
    
    if 
    
       Player.Defined($PLAYER_CHAR)
    
    jf @SPAWN_11 
    
    0@ = Car.Create($BULLET, 1@, 2@, 3@)
    
    Car.RemoveReferences(0@)
    
    0A93: end_custom_thread
    Not much difference. But when you check write opcode, it'll look like this
    // This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
    
    
    
    {$VERSION 3.1.0027}
    
    {$CLEO .cs}
    
    
    
    //-------------MAIN---------------
    
    03A4: name_thread 'SPAWN' 
    
    
    
    :SPAWN_11
    
    00D6: if 
    
    0256:   player $PLAYER_CHAR defined 
    
    004D: jump_if_false @SPAWN_11 
    
    00A5: 0@ = create_car #BULLET at 1@ 2@ 3@ 
    
    01C3: remove_references_to_car 0@ // Like turning a car into any random car 
    
    0A93: end_custom_thread

    Notice that all the keywords get replaced by the opcode that represents if (Car.create to 00A5), hence write opcode

    Or in other words, RTFM.


  4. wrong.

    It requires SA codes if the coder hasn't already used CLEO codes. The whole horse thing here revolves around using SA scm codes, not CLEO, even if it was written in CLEO.

    In fact, I don't see why you would need CLEO codes for this. Just a bunch of attach opcodes and as_actor opcodes. Both of which will never be available in VC.


  5. no, because the Crysis Delorean is meant to be a standalone car with no affiliation to the mod at all other than being based off the bttf movies

    The Deluxo is the natural choice to have the delorean replace it.

    People have to understand that this car is not meant to be a mod to our mod

    Besides, it doesn't take a rocket scientist to figure out renaming works as well <<