Tuesday, 2017-08-22, 9:39 PM
Welcome Guest | RSS

    
Main | M484GCS V8.0 Release Notes - Forum | Registration | Login

[ New messages · Members · Forum rules · Search · RSS ]
Page 1 of 11
Forum » Announcements » Development News » M484GCS V8.0 Release Notes
M484GCS V8.0 Release Notes
Master484Date: Sunday, 2013-12-01, 8:27 PM | Message # 1
Group: Administrators
Messages: 69
Status: Offline
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
VERSION 8.0
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------

###########################
ADDITIONS and IMPROVEMENTS:
###########################

  ----------------------------------------------------------------------------

  ###### LICENSE ######

  - I changed the program License again.
    From now on the program is released under a custom "M484GCS License".
    But in practice not much has changed; the program is still free and open source.
    The reason for the license change was to avoid some minor incompatibility issues
    that the program had with the previous license (GPL3), and also to give me the
    freedom to more easily modify the license in the future if the need arises.

    Also the source code is now located in a folder called "editorfiles/sourcecode",
    instead of the "gamefiles" folder where it used to be.

  ----------------------------------------------------------------------------

  ###### OBJECTS ######

  *** 1 ***

  Added a new Animation Template: "PLATFORMER".
  This is a basic animation model for an object that can run, jump and duck.
  Combine this Animation Template with the following:
  -Set (Player) "Object Gravity" to YES
  -Set "Game Gravity" to some value
  -Set one of Player Actions to "JUMP"
  -Set Player Jump Speed and Air Time
  -Set Player "XY axis lock to "X LOCK"
  This will put the Engine into a basic platformer game mode.
  This mode is still somewhat "work in progress", but it should be enough for simple platformers.
  But things like ladders, slopes, "jump through" platforms, and gravity for the Enemies are
  still missing; these will be probably added in the future.

  *** 2 ***

  Added 2 new Collision Methods: HITBOX and IMAGEBOX.
  Added Object Transform "Get Script ID" and "Value Inheritance" features.

  Because of these upgrades two new OBJECT DATA PAGES have been created,
  so there are now 5 Data Pages in total.

  - Data Page 4:
    This is the Object Hitbox "editor", which allows you to select between different collision
    detection methods. The Options are "PIXEL PERFECT", "HITBOX" and "IMAGEBOX".
    "PIXEL PERFECT" is the most accurate method and is the default option for all objects.
    "IMAGEBOX" sets the "collision box" to the Object's Image XY borders,
    and "HITBOX" allows you to define a custom "collsion box" for the object.

  - Data Page 5:
    This is an "option list" where you can set Transform Scripts and Transform Value Inheritances.
    Supported Transform types are "Lifetime","Death","Damage","Shoot","Out of Ammo","Ineffective Hit" and "Event 5".
    Values that can be inherited are "Energy","Speed","Ammo","Shots","Lifetime","Script" and "Animation Frame".
    This is a powerful data table which allows the creation of very complex multi-form game objects.
    Ideal for complex transforming Boss Enemies, but can be used for many other things too.

  *** 3 ***

  A "Coordinate XY Editor" has been added to OBJ DATA PAGES 2, 3 and 4, and to the Weapons Screen.
  This editor can be activated by pressing the new buttons that are found next to various XY values.
  In the editor you can use the Mouse to quickly set "shot offsets" for Objects and Weapons,
  as well as "Gun locations" and "Hitboxes".

  *** 4 ***

  All "Animation Variables" have been removed from Data Page 1, because they were unnecessary and
  could cause confusion. So from now on all animation variables are changed through the object
  GFX screen. The space previously held by the Animation Variables has been left empty for future use.

  ----------------------------------------------------------------------------

  ###### EDIT VALUES SCREEN ######

  - Added a New Player Action: "JUMP" ( Action ID number = "-5" )

  - Three new options added:
    1. PLAYER JUMP SPEED
    2. PLAYER JUMP AIR TIME
    3. GAME GRAVITY

  - "Image Background Color" section was renamed to "Image Transparent Color".
  - The old "Jump X frames" thing was removed.
  - "Player Gravity" and "Maximum Amount of Player Bullets on Screen" options have been removed.

  ( "Player Gravity" became obsolete because "Game Gravity" and  Object "Gravity Flag" replaced it. )
  ( And the "Max Player bullets" thing was never implemented... )
  ( And also I realized that the most reasonable way to do it would be to add )
  ( a "Maximum Amount on Screen" attribute for all Objects; maybe this is done in the future )

  ----------------------------------------------------------------------------

  ###### OTHER CHANGES ######

  - Added "Color Buttons" to the Main Menu.
    These allow one to change the background CLS Color of the Editor.
    The color values are saved on Editor Exit, to the file "editorfiles/editoroptions/edvalues.txt",
    and are loaded when the editor starts.

  - A "MARGIN SCROLL SPEED" option has been added to the Level Data screen.
    This allows one to set different speed values for Level Scroll and Margin Scroll.
    (Before this Margin Scroll Speed was automatically determined by Level Scroll Speed)

  - PLAYER ACTION TRANSFORMS:
    Player "Action Button Transforms", "Sub Weapon Transforms" and "Directional Transforms"
    now use "autological" value inheritance, all 7 values are automatically inherited.
    ( This finally makes it possible to actually create: Button press---> Player Form Change )
    ( without any "value reset" side effects. )

  - POWER UPS -- MAXIMUM ENERGY AND SPEED:
    - Objects maximum Energy is now it's original Energy value.
    - Objects maximum Speed is now original Speed+3.
    This means that "increase energy" power-ups will no longer
    give you more Energy than what the Objects starting Energy was.
    So Object's starting Energy at creation is considered to be the Object's "Full Health".
    Also "increase Speed" power-ups can now increase the Speed by a maximum of: (original value + 3).

  - Screen Updates now use the "VWait:Flip False" method to remove possible "screen tear".
    So all Flip commands have been replaced this way:
    Flip              ---->  "VWait : Flip False"
    FlipCanvas Canvas ---->  "VWait : FlipCanvas Canvas,0"

  - "Gun Location Width" and "Gun Location Height" were removed.
    Gun Locations are now normal XY coordinates, to which the Shots are centered.

  - Player Effect ID sprite now uses "TELEPORT TO PL XY" as the default script.
    (The old "Lock Follow" script had a nasty 1 frame "delay" in it)

  - Shell "Position Editor" Plus/Minus XY Buttons now react to "right mouse button down".
    So now:
  - Left Mouse Button Click = 1 pixel XY change
  - Right Mouse Button Down = Fast continuous XY change

  - The "Shooting Method" variable in the Object Data Page 1 no longer displays the word "NONE" for
    "Player" And "Player Part/Ally" Objects...instead it now displays a "SHOOTS WHEN PLAYER FIRES" text,
    which is more clear and accurate: Player and Player allies always shoot when "fire" button is pressed.

  - Added Mouse Tooltips for EDIT SHELL "Position Editor" and "Extras Editor" buttons,
    and also added a few other help texts to various places.

  - Weapon names now display the text "MAIN WEAPON" instead of "M WEAPON".

 ----------------------------------------------------------------------------

  ###### CHANGES IN WALL COLLISIONS ######

    "Stop Wall" Collisions now use "pixel perfect surface set".
    This means that the game no longer leaves any "gaps" between the colliding OBJECT and STOP WALL.

    When a Wall Collision happens, 3 Actions are taken:

    1. If Object has moved during that frame, the game will push Object
    back pixel per pixel, until no wall collision happens anymore OR until
    OBJ has been pushed for the amount of its movement value.
    If OBJ has not moved that frame, then it's not pushed.

    2. Objects that are still colliding with a wall after step 1 are then
    assumed to have a collision with a "moving wall".
    In this case too Objects are pushed back, but this time the "pushing amount"
    is determined by the pix amount the WALL has moved that frame.
    
    Both of those 2 actions above are "smart" and have "sticky walls" prevention.

    3. Objects that are still colliding with a wall(s) after steps 1 and 2
    are simply destroyed ( Energy=0 ---> Death Transform ).
    The old "free-from-stuck-positions-Object-bounce-thing" has been abandoned.
    --IMPORTANT--
    This means that animated "Pixel Perfect" collision Objects can now be easily destroyed in wall collisions.
    So if your game has "Stop Walls", it is recommended that you use the new "ImageBox" or "Hitbox"
    collisions for all objects that can collide with stop walls.
    The new "Imagebox" and "Hitbox" collisions are 100% "Wall Safe", so Objs with these will never be destroyed in
    "stop wall" collisions, unless they get stuck between 2 moving walls (or 1 moving wall + 1 stationary wall).

    Also note that re-spawning Players (Object 1) that re-spawn inside a stop wall will
    now be destroyed unless they have "Ignore Collisions = YES".
    So it is recommended that your OBJECT 1 should in most cases be an "Ignore Collisions" Player
    with a few seconds of "Lifetime", which then transforms into the actual "normal Player".

 ----------------------------------------------------------------------------

###########################
BUGS FIXED:
###########################

 - Fixed: "SUB WEAPON AMMO" couldn't be set as "INFINITE".
   (Now this works just like normal weapons: setting the ammo value to "-1" makes it infinite)

 - Fixed: "RND MOVE" and "RND ASSAULT" scripts didn't work in Script Editor.
   I'm unsure which version update broke these two...
   The bug caused these scripts to work OK in the game, but in the Script Editor they behaved strangely.
   But now this issue has been fixed.

 - Fixed: In "Edit Objects", when an object was deleted from the list with a key "Q" press, it's "Empty Status"
   was not saved during "Save Project", because the file save routine skips all "Category=None" objects.
   And so when you next time loaded the project, the deleted object was still there.
   But now I have fixed this:
   A Deleted Object's Category is now set to "Enemy", which causes it to be saved during "Save Project".
   So now Deleting an Object from the list actually creates an "Enemy" with all values at either "0" or Defaults.

 - The Game Engine "Highscore Name Writing" routine had a wrong screen update command:
   "FlipCanvas" instead of normal "Flip".
   So theoretically it tried to Flip a "Canvas" that didn't exist, but for some reason this
   didn't cause an error when I tested it...
   But now I have fixed this and the right command is used.
   So if you have experienced problems during the "highscore name write" screen, then this update should fix them.

-  Fixed: Shots placed to Gun Locations were misplaced if Game Gravity was turned ON.

-  Fixed: In the values screen the "Autofire Delay" text field turned empty if any of the
   "Action values" were set less than "-2".
 
Forum » Announcements » Development News » M484GCS V8.0 Release Notes
Page 1 of 11
Search:

Copyright M484 Games © 2017