PTE build 85104-pte is now live!

Discussion in 'Planetary Annihilation General Discussion' started by jables, July 16, 2015.

  1. kayonsmit101

    kayonsmit101 Active Member

    Messages:
    197
    Likes Received:
    128
    The orbital launcher rocket is still in the incorrect spot while building orbital units.
    Remy561, ArchieBuld and rivii like this.
  2. jables

    jables Uber Employee

    Messages:
    812
    Likes Received:
    5,537
    Op updated:

    Build 84260-pte
    - 7/20/15

    Asteroids

    Adjusted the slow down of impacting asteroids.
    Minor adjustments to planet explosion and impact effects.
    Updated the asteroid belt effect to use the new "infinite" (-1) particle lifetime


    UI Scaling

    Option exists in settings as "GUI Size"
    Players have a slider that allows them to adjust the size of the UI to their liking


    Mod support:

    Adding a modding API for controlling server-side camera culling
    Added support for specifying the world view to the time API
    Added generic, world-space unit order JS API.
    Holodeck raycast JS API
    - Allows casting rays (optionally multiple per call) in holodeck screen space against terrain, units, and features.
    Added the order & build queues to api.WorldView.getUnitState output.


    AI changes:

    AI can now use asteroids
    AI can now handle combat on smaller planets better
    AI will launch asteroids at other asteroids, under certain conditions


    Bugfix/polish:

    Fixed the shader error on mac which was leading to crashes on asteroid systems
    Update buttons for offline unavailable, offline disabled, and graphics crash, as well as fix close window button on dialog.
    Fix for failing to land on asteroids in the low spots
    Fix for possibly losing a command if the command is given during freeze time.
    Fix for typo in AI: NetalStorageFrac vs MetalStorageFrac
    Potential celestial targets are marked with red circles instead of blue/green circles
    Added new music cue which is triggered when targeting an asteroid or the annihilaser
    Removed some error log spamming related to Asteroid brushes not existing and particle lifetime being too long
    Fix for missing asteroid shadow shader warning.
    Fix for asteroids showing as grey sometimes. (Default biome color was set to moon grey, now asteroid colored.)
    Fix metal planet sound happening on planet smash.
    Fix for larger asteroid belt chunks not rendering normal maps.
    Fixed planet smashes playing the sound effect twice in certain situations
    Fixed gas giants and far away planets from getting odd clipped edges on their lighting
    Fix for "him or me" achievement. Also fixes a bug where the wrong planet selection index was being used.


    Known issues:

    The fog of war effect is applied to the asteroid belt when zoomed in on a planet.
    doud, cdrkf, Remy561 and 14 others like this.
  3. wpmarshall

    wpmarshall Planetary Moderator

    Messages:
    1,868
    Likes Received:
    2,989
    Intawesteeng o_O
  4. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    So do I understand correctly I can now:
    - give commands in world space via JS
    - query "what is there" from the map for units as well as terrain (as in "is it land/water?"). Though wait that "only" goes from the screen 2D to the planet. So I guess to map out a planet I would need to jump the camera around a little. Hmm. Still probably can be done within seconds now while the player selects their spawn in some hidden pip that is then disposed off.
    - get info on orders and build queues

    [​IMG]

    Today is christmas

    EDIT:
    The order API allow to give orders to units by ID it seems. Automatic micro or factory management mods are likely possible now. In fact with all that info and control stuff it might be possible to build a full AI mod that plays the game by itself from the UI. xD
    Last edited: July 20, 2015
    xankar, reptarking, cdrkf and 2 others like this.
  5. davostheblack

    davostheblack Well-Known Member

    Messages:
    364
    Likes Received:
    313
    Uber, as always, thank you :)
    cdrkf, ArchieBuld and stuart98 like this.
  6. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    @pinbender
    When I query unitInfo on a factory can I see somewhere if it is running in endless loop mode or not? Maybe I am blind.
    When I query it on an idle factory I get an string in the build property of the result that tells me. But when it has a build queue the string is not there anymore, only the queue info. That info is really nice, but the string is missing.

    EDIT:
    one more thing I had assumed to be part of raycastTerrain that would be really really helpful to have:
    Information on "is it land/water/lava/etc". Depends on what info you can give easily, I guess the minimum you probably have readily availlable would be "what kind of surface layer is it? Water? land?".
    That's like the one missing link to make my Ubermap mod work for pretty much every map I think, because with that I can quickly build up a cloud of dots for all map locations by quering them inside a hidden pip that I then dispose of.

    EDIT 2:
    Also it seems that a query on top of a mex, yields the ID of the feature. Is there any API that can tell me what that ID refers to? the unit info API is not finding that ID. So all I can get is "there is a feature there", but no further info.
    Last edited: July 20, 2015
  7. xanoxis

    xanoxis Active Member

    Messages:
    459
    Likes Received:
    238
    UI scaling. Amazing!
    cdrkf likes this.
  8. pinbender

    pinbender Active Member

    Messages:
    78
    Likes Received:
    137
    That's the "build" key. If you set it to continuous, it should say "Continuous".

    It was on my to-do list, but I ran out of time, and have been forced to move on to other things.

    BTW, you can use an empty puppet to query terrain heights in world space via location snapping. That's not what you're after, but I thought I would mention it.
    cdrkf and cola_colin like this.
  9. crizmess

    crizmess Well-Known Member

    Messages:
    434
    Likes Received:
    317
    Thank you, so much!
    ArchieBuld likes this.
  10. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    Yeah but if there is stuff in the queue the build key has the stuff that will be build instead. The string is gone in that case.

    [/quote]
    Damn :( Somebody should get you a time machine.
    I was just thinking that I can make bulk queries and a few camera movements to query terrain heights, in fact I have a console open right now where I can click somewhere and get the terrain height. I guess I will make a heightmap of the planet. The puppets probably are more faster because they dont need a viewport, so that is a great info. I guess that will look somewhat like the planet, but knowing "water or land" would make it so much prettier because I could generate a projected map that is colored like light blue for not so deep water, dark blue for deep water, dark brown for mountain tops, etc. With that info on water or not I can only show the heightmap.
    Any idea on how I may be able to infer if there is land or water? In the past I've been doing build command queries on the middle of the screen to... wait what happens when I query a "build pgen" command onto a world coordinate that is filled with water? Though I guess the new orders API probably is not as "nice" in the sense that it wont like it when I give such a command to a non existing unit. The old screen space API had the advantage that it even yields me a "yep you can make that there" when I have no fabber selected. Hmm I will experiment.

    EDIT:
    So it seems the commands API has some checks that check the sanity of the command.
    So when I specify no unit it tells me I have no unit specified. As weird as it sounds, would it be possible to still tell me "you could place that building there if you had a unit specificed", if that is one of the later checks. I can't tell if that is a check (I soooo hope it is, because then I can tell if it is water or land. Btw is there a way to define a building that can only be build in lava? I've not managed to do so, but it would be helpful for what I want ;))

    But more importantly I can't get the commands API to work.
    See this:
    [​IMG]

    So I have a commander with ID 63 in my army 0 on my planet 0.
    The unit query API tells it is on a planet with ID 0. The celestial info of the map also says the planet has ID and INDEX 0.
    So then I add some mouselistener that will make pgen build orders. I click onto the planet and only ever get "invalid target planet".
    What am I doing wrong? Or is this a bug?

    EDIT:
    Oh yeah I btw realize that a pgen can be placed in water. Guess I should do the test with something that can not be placed on water. But that changes nothing about the invalid planet issue.
    Last edited: July 20, 2015
  11. Shenroth

    Shenroth New Member

    Messages:
    4
    Likes Received:
    8
    Latest PTE build causes my system to shut down, I would post a screen shot but it literally powers down. checking to see if its a heat issue. Main build does not cause any issues with my system.

    Edit: Fixed, was heating issue.

    Attached Files:

    Last edited: July 21, 2015
  12. wondible

    wondible Post Master General

    Messages:
    3,315
    Likes Received:
    2,089
    :eek:

    ... And right now I have 20% packet loss
  13. mikeyh

    mikeyh Post Master General

    Messages:
    1,869
    Likes Received:
    1,509
    @pinbender @jables @Sorian

    Can you please add a new unit type which is added to every unit and include that as a requirement for every builder:
    • UNITTYPE_Uber
    • "buildable_types: "Uber & ( existing_buildable_types )"
    We need these to allow default and faction commanders to only build their respective units.

    Examples
    • base_commander.js:
      • "buildable_types":"Uber & CmdBuild"
      • "unit_types":["UNITTYPE_Uber","UNITTYPE_Commander","UNITTYPE_Construction","UNITTYPE_Mobile","UNITTYPE_Offense","UNITTYPE_Land","UNITTYPE_NoBuild"]
    • bot_factory.js
      • "buildable_types":"Uber & Bot & Mobile & Basic & FactoryBuild"
      • "unit_types":["UNITTYPE_Uber","UNITTYPE_Factory","UNITTYPE_Construction","UNITTYPE_Land","UNITTYPE_Bot","UNITTYPE_Structure","UNITTYPE_Basic","UNITTYPE_CmdBuild","UNITTYPE_FabBuild","UNITTYPE_FabAdvBuild","UNITTYPE_Important"]
    • etc
    ace63, Quitch and killerkiwijuice like this.
  14. stuart98

    stuart98 Post Master General

    Messages:
    6,009
    Likes Received:
    3,888
    No, no we don't.

    That's what custom flags are for.

    And then modders can just add - custom1 to vanilla buildable types.
  15. killerkiwijuice

    killerkiwijuice Post Master General

    Messages:
    3,879
    Likes Received:
    3,597
    no.

    Why would we want to modify vanilla.
    xankar, proeleert and Quitch like this.
  16. pinbender

    pinbender Active Member

    Messages:
    78
    Likes Received:
    137
    Argh. The "docs" are wrong. It's looking for "location", not "target". I'll update the docs.
    cola_colin likes this.
  17. killerkiwijuice

    killerkiwijuice Post Master General

    Messages:
    3,879
    Likes Received:
    3,597
    Here's a bit of extra lore I added to the asteroid belt :p
    [​IMG]
    earth75, xankar, DeathByDenim and 6 others like this.
  18. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    Okay now this works:
    Code:
    $('.primary').mousedown(function(e) {model.holodeck.raycast(e.offsetX, e.offsetY).then(function(data) { console.log(data); 
    api.getWorldView(0).sendOrder({ 
    units: [63], 
    command: 'move', 
    location: {   planet: 0,  
     pos: data.pos },
     spec: "/pa/units/land/energy_plant/energy_plant.json" }).then(function(data) {console.log(data);}); });});
    
    It prints "true" onto the console and my commander moves to the clicked location.

    However if I change the command to 'build' it only prints "true" into the console. Always, no matter where I click. No command is given at all.
  19. stuart98

    stuart98 Post Master General

    Messages:
    6,009
    Likes Received:
    3,888
    You. I like you. :)
  20. kayonsmit101

    kayonsmit101 Active Member

    Messages:
    197
    Likes Received:
    128
    Maybe I missed this or maybe it was just added... But that sun glow is so very yummy looking :D
    stuart98 likes this.

Share This Page