As was foretold, we've added advertisements to the forums! If you have questions, or if you encounter any bugs, please visit this thread: https://forums.penny-arcade.com/discussion/240191/forum-advertisement-faq-and-reports-thread/

[Game Dev] I don't have a publisher. What I do have are a very particular set of skills.

1303133353692

Posts

  • UselesswarriorUselesswarrior Registered User regular
    Apple has upped the iOS over the air download limit from 100mb to 150mb.

    Might not be much, but a cause for celebration for anyone who has tried to cut down a game to under a 100mb.

    Hey I made a game, check it out @ http://ifallingrobot.com/. (Or don't, your call)
  • ZavianZavian universal peace sounds better than forever war Registered User regular
    edited September 2017
    So last night I started development on my first video game project, Florida Nights 2087, a racer/platformer using the Highroad and Corgi engines for Unity. After dealing with some compiler errors and what not, I was able to make a simple prototype for the racing portion using Highroad and merged it with a Retro Aesthetics asset to get that future retro look going. There's still a ton of work to be done, but I managed to put together a first Alpha build that includes two levels and local 1-4 multiplayer. This weekend I plan to add some custom cars, custom levels and an actual main menu with a way to exit the game (whoops!)
    0iMWjE.jpg
    I released the Alpha for free on itch.io if anyone wants to check it out

    Zavian on
  • HandkorHandkor Registered User regular
    The alpha is in really good shape. In top-down mode the waviness of the retro asset was a bit much, but with the chase cam it was fine. I don't think you need all those effects anyway. I was alive back then and like with VHS artifacts it was never that bad or exaggerated.

    Controls are good, the ships slip and slide just enough to give a sense of speed but still stay in control. I kept pressing the shoulder buttons to try and drift like in f-zero though.

    The locked chase camera was a bit odd or stiff, I think it will need a bit of looseness on at least on of the axis (up-down mostly), definitely worth looking at wipeout, f-zero for inspiration there.

  • RoyceSraphimRoyceSraphim Registered User regular
    How does unity handle pausing the game?

  • ZavianZavian universal peace sounds better than forever war Registered User regular
    How does unity handle pausing the game?

    I'm not sure if there's a default Unity pause option, but the Corgi engine has it tied to UICamera:
    The pause screen is a subpart of the UICamera, containing a black overlay, some text and a few buttons. You can (and should) of course customize it to feature your own buttons and art style. To do so, all you have to do is unfold the UICamera prefab, locate the PauseSplash part, and make your changes there.

    Also, thanks Handkor for the feedback! I've been busy with work this week but plan to spend the weekend in the next alpha build. I definitely plan to adjust the screen effects, change/add camera angles, etc. And I do want to add some more controls like a drift option. Very excited to be working on my first game!

  • RendRend Registered User regular
    Zavian wrote: »
    How does unity handle pausing the game?

    I'm not sure if there's a default Unity pause option, but the Corgi engine has it tied to UICamera:
    The pause screen is a subpart of the UICamera, containing a black overlay, some text and a few buttons. You can (and should) of course customize it to feature your own buttons and art style. To do so, all you have to do is unfold the UICamera prefab, locate the PauseSplash part, and make your changes there.

    Also, thanks Handkor for the feedback! I've been busy with work this week but plan to spend the weekend in the next alpha build. I definitely plan to adjust the screen effects, change/add camera angles, etc. And I do want to add some more controls like a drift option. Very excited to be working on my first game!

    The basic way Unity approaches pausing is by setting Time.timeScale to 0, then everything in the game that depends on Time.deltaTime will halt.

    Of course, if you want some things to continue, like animating pause screen stuff, you can set your own custom time scale variables and reference them in your scripts instead.

  • KhavallKhavall British ColumbiaRegistered User regular
    edited September 2017
    Yeah Time.timeScale is a great way to do it, but you need to be careful with it because it stops everything that deals with Time.

    However, it also allows you to do cool things like the faux-pause where you just slow everything down to 10% or something.

    Khavall on
  • RendRend Registered User regular
    Khavall wrote: »
    Yeah Time.timeScale is a great way to do it, but you need to be careful with it because it stops everything that deals with Time.

    However, it also allows you to do cool things like the faux-pause where you just slow everything down to 10% or something.

    Yeah ideally you set up an object that has a few different timescales in it.
    private float uiTimeScale; //For camera and objects related to pausing and menus
    private float playerTimeScale; //For the player character
    private float npcTimeScale; //For everything not player related
    
    public void pauseWholeGame(){
      uiTimeScale = 1;
      playerTimeScale = 0;
      npcTimeScale = 0;
    }
    
    public void unpauseWholeGame(){
      uiTimeScale = 1;
      playerTimeScale = 1;
      npcTimeScale = 1;
    }
    
    public void bulletTime(){
      playerTimeScale = 0.25;
      npcTimeScale = 0.25;
    }
    
    public void playerCastsTimeStop(){
      playerTimeScale = 1;
      npcTimeScale = 0;
    }
    

    ...etc etc

  • RoyceSraphimRoyceSraphim Registered User regular
    It was one of those things that had quite a few different solutions in gamemaker and i was curious

  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    edited September 2017
    Pausing in GameMaker can be a pain in the ass if you don't plan for it in step 1. Coming back to it later means a ton of work and debugging.

    I use a parenting system so when any instance is created I have access to them as a whole and individually, my pause system is tied into that parent. When the pause system engages the entire instance is disabled except for the current draw state.

    A more common and quite brutal method - but it works: Snap a screenshot of the view, disable every instance in the view, and then overlay the screenshot with your active controller object.

    HallowedFaith on
    I'm making video games. DesignBy.Cloud
  • HandkorHandkor Registered User regular
    A game by it's cover got a week extension which is allowing to work on SailStar a little bit more. I am going to limit it to just a chill island point to point racing game where the only objective is to reach the goal before thr sun sets.

  • templewulftemplewulf The Team Chump USARegistered User regular
    Rend wrote: »
    Khavall wrote: »
    Yeah Time.timeScale is a great way to do it, but you need to be careful with it because it stops everything that deals with Time.

    However, it also allows you to do cool things like the faux-pause where you just slow everything down to 10% or something.

    Yeah ideally you set up an object that has a few different timescales in it.
    private float uiTimeScale; //For camera and objects related to pausing and menus
    private float playerTimeScale; //For the player character
    private float npcTimeScale; //For everything not player related
    
    public void pauseWholeGame(){
      uiTimeScale = 1;
      playerTimeScale = 0;
      npcTimeScale = 0;
    }
    
    public void unpauseWholeGame(){
      uiTimeScale = 1;
      playerTimeScale = 1;
      npcTimeScale = 1;
    }
    
    public void bulletTime(){
      playerTimeScale = 0.25;
      npcTimeScale = 0.25;
    }
    
    public void playerCastsTimeStop(){
      playerTimeScale = 1;
      npcTimeScale = 0;
    }
    

    ...etc etc

    I don't know when this got added, but I find Time.UnscaledDeltaTime useful for this distinction. That way, UI can act unscaled, and the rest the game responds to pausing with scaled time.

    I also created a state class that inherits from monobehavior, and I have it set its desired time scale on activation. That way, each class that listens to input can set it without worrying what the UI needs.

    Twitch.tv/FiercePunchStudios | PSN | Steam | Discord | SFV CFN: templewulf
  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    Would any of you care to see the first cut of my game trailer I am publicly releasing today? I only get X amount of tries to make trailers so I hope I am getting better.

    Anyway, please give your ups/downs on this - especially if you've seen my other attempts!

    https://www.youtube.com/watch?v=uKD3xgQXvrc

    I'm making video games. DesignBy.Cloud
  • ZavianZavian universal peace sounds better than forever war Registered User regular
    I was wondering what everyone used for 3D Modeling? Currently I'm learning Blender, which is a bit of a culture shock as I'm much more experienced with the 2D controls and UI of programs like Photoshop and GIMP. I haven't been able to find much in the way of open source options like a GIMP, and the paid programs like Maya seem even more advanced than Blender. I'm trying to do low poly mobile ready models, so avoiding sculpturing type programs like Sculptris.

  • KhavallKhavall British ColumbiaRegistered User regular
    I use Maya and 3ds Max. I'm trying to use Maya more, since it seems to be more standard, but 3ds max is what I learned first and I have trouble changing.

    Of course, I also get all the autodesk programs free through school, so that's not 100% applicable.

  • KashaarKashaar Low OrbitRegistered User regular
    Blender has been making real strides lately. If I wasn't already invested in Modo for personal stuff and using 3dsMax at work, I'd probably choose to work in Blender, knowing what I know now.

    Modo is reeeaally fucking nice though. I used to work in Max for years, and decided to do a freelance job using Modo as a way to learn it a few years ago. It only took a few weeks and I was modeling faster in Modo than I ever was in Max after years of use. Modo is all about that workflow, and there's a cheap Indie version on Steam whose two significant differences vs. the full version are lack of scripting support and export polycount limits, meaning if you bake, you have to bake in Modo itself (or jump through a few hoops to export meshes in chunks).

    Indie Dev Blog | Twitter | Steam
    Unreal Engine 4 Developers Community.

    I'm working on a cute little video game! Here's a link for you.
  • HandkorHandkor Registered User regular
    edited September 2017
    I use and old copy of 3dsmax 2008 that I won through Microsoft's DreamBuildPlay contest almost a decade ago. I really need to try out blender.

    I need to use an external FBX Conversion tool on everything I export before importing into UE4.

    Handkor on
  • CornucopiistCornucopiist Registered User regular
    A few tips I wrote down to help with Blender:

    Lost in Blender?

    Rendered and can't get back to the normal view? Hit esc! For a permanent fix, set 'render to new window' in camera settings .
    If you get stuck with a weird window config; start new file. window configs are saved with file. Copy all your objects over...

    To pan the view, hold down Shift and drag middle mouse button in the 3D viewport.
    -Show default layout
    -Split views by dragging the diagonally hatched corner of a view. If you want to get rid of them again, drag the view next to it on top of the one you don't need. Practice this a bit
    -You can choose a type of view at the bottom left of each view in the menu bar.
    -crap renders? If there's too much noise, increase the 'sampling' in the render settings
    - to get rid of fireflies, the separate bright pixels,use the 'blur return' setting
    - -Don't use lamps. Use big cubes with an 'emission material'.
    -Slow renders? Use Toon material while modeling... but get used to the slowness. If you machine can handle it, try using GPU accelerated rendering!

    More blender tips:

    For instances; make group of selected objects with ctrl J, then from the 'add' menu add a group instance. (check out dupli offset)

    ctrl J to join objects, for example if you want to use a group of objects to perform a boolean, or to speed up duplicating them.

    You can use the 'set origin' menu on the left to shift the origin to the center of such a group and rotate or move it properly.

    You might then end up with duplicate materials. You can search for material names in the outliner window (object list) and use right click to select them, then 'unlink'.

    to give the objects new materials, you can use ctrl L to link stuff, including materials. Select the objects, then select an object with the good material last, then press ctrl L and select materials. This also replaces the materials!

    Another issue with joined objects is that they retain materials that have been changed- on purpose, of course! They can be easily removed by using the - sign in the material tab.

  • UselesswarriorUselesswarrior Registered User regular
    Would any of you care to see the first cut of my game trailer I am publicly releasing today? I only get X amount of tries to make trailers so I hope I am getting better.

    Anyway, please give your ups/downs on this - especially if you've seen my other attempts!

    https://www.youtube.com/watch?v=uKD3xgQXvrc

    Is it possible to zoom in on the action more? Fullscreen it is fine, but in a smaller window it doesn't show the action if viewed in a smaller window.

    Hey I made a game, check it out @ http://ifallingrobot.com/. (Or don't, your call)
  • agoajagoaj Top Tier One FearRegistered User regular
    Had problems figuring out sprite skinning in Unity. All the obvious solutions required loading all the textures that could possible be used.

    But I figured out a solution that only loads what's used and is easy to setup and animate.

    The problems:
    • Sprites that are referenced are loaded and their textures are loaded.
    • Animations that change sprites references sprites

    My solution was to get rid of the sprite references. Moved the player textures to the Resources folder so we can load it when we need it. Now I just need an ID for a texture and a frame number to load a sprite.

    New problem pops up, Unity's animator only animates floats. I can store the frame number in there, but what about the sheet id? I don't want to build a list of sheets, that would be easy to mess up and overlook a missing animation.
    I decide to hash the texture name, turning the string into a number, but I'm limited to 24 bits because if I mess with the mantissa I'm not going to get the same number back. That's still 16 million numbers(Chance of two names having the same hash is about 0.001% for 500 names).

    After all the failed attempts I'm surprised this one worked.

    https://www.youtube.com/watch?v=dLDr062v8tY

    Also while looking for solutions I found this cool sprite animator from the devs of Crawl
    https://www.youtube.com/watch?v=p5M3z26PEvQ
    Doesn't give you any new feature you couldn't do with unity, but it's a better workflow for sprites.

    ujav5b9gwj1s.png
  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    edited September 2017
    Would any of you care to see the first cut of my game trailer I am publicly releasing today? I only get X amount of tries to make trailers so I hope I am getting better.

    Anyway, please give your ups/downs on this - especially if you've seen my other attempts!

    https://www.youtube.com/watch?v=uKD3xgQXvrc

    Is it possible to zoom in on the action more? Fullscreen it is fine, but in a smaller window it doesn't show the action if viewed in a smaller window.

    That's def something I want to look into for my next trailer. I learn more each time I do this. Problem is I cram a lot of stuff on the screen so the player can see their choices and SGB is a tiny little guy vs a big dude in the middle like most platformers.

    I... probably suck at this more than I can admit to lol.

    HallowedFaith on
    I'm making video games. DesignBy.Cloud
  • MvrckMvrck Dwarven MountainhomeRegistered User regular
    Lots of really weird Blender Quirks and Tips

    Blender is an amazing 3d modeling program written by someone who looked at emacs and said "This program is too intuitive, how can I make it more complicated to use?"

  • Mc zanyMc zany Registered User regular
    Blender. The program where you need to watch a tutorial to model a pyramid.

  • RoyceSraphimRoyceSraphim Registered User regular
    Coming from rhino and solidworks, blender was....interesting.

  • CornucopiistCornucopiist Registered User regular
    edited September 2017
    I came from C4D.
    I have to admit, I looked at the Blender interface for a bit. Then I looked at the C4D license fee. Back and forth a while. But it wasn't a decision since I didn't have the money.
    And the first month was TOUGH.
    Not gonna lie.
    Nearly gave up.
    After that it went fast. Those tips should help you a LOT. I should turn them into a youtube vid that'd be even more helpful... but anyway.
    After a few months Blender became second nature.
    One thing is that Blender will never be very good at booleans. Fogeddaboutit.

    Cornucopiist on
  • KoopahTroopahKoopahTroopah The koopas, the troopas. Philadelphia, PARegistered User regular
    Getting a huge Dark Messiah vibe. Looks like it's coming together really well.

  • RoyceSraphimRoyceSraphim Registered User regular
    Rpgmaker sale on humble bundle, not sure how great.

  • KupiKupi Registered User regular
    Kupi Is Reporting His Status On A Friday

    I took about a month off of doing game development out of a combination of depression and there being a lot of new game releases that I wanted to play. I can mildly justify the time spent gaming as an attempt to get me out of the sort of brainless internet-drifting that would otherwise consume my time, but in reality I've just been kind of useless through September. But. I have a few things I got done this week, so let's focus on the good.

    In a fit of pique, I returned to a very, very old problem from back when I was still working on an overly-ambitious roguelike. If you have characters moving around on a grid, you're probably going to wind up doing A* at some point to figure out how to get a dragon into an uncomfortable position for the player. (Though it should be noted that a game like Crypt of the Necrodancer gets away just fine with monsters that will merrily smash their faces into walls once aggroed thanks to the simplified nature of the game and the sheer number of enemies per floor.) A* isn't exactly a trivial algorithm, but it's not terribly hard once you get the hang of it. However, there was one problem that dogged every implementation of it I've ever written for roguelikes: the paths it creates can look awful.

    kOQ8Bno.png

    Because every move, whether axis-aligned or diagonal, has a real movement cost of 1, there are dozens if not hundreds of optimal paths from start (grey tile) to finish (red tile), because so long as you use the minimum required moves on the longer axis, you can screw around on the other axis as much as you want so long as those moves cancel out to hitting the target. Since most of my proposed roguelike games don't involve moving along to the beat, having goblins tap-dancing as they approach the player is thematically inappropriate. I tried a large number of heuristic functions, movement cost functions, and neighbor evaluation functions, but I just couldn't quite get it to the point where I actually liked the output and eventually gave up and said "it's good enough". (Spoilers: I wind up doing this again.)

    But I recently had a flash of inspiration and re-opened the project. The key was to re-contextualize the problem. The goal is still to make an optimal movement path to the target tile from the starting position. However, the aesthetic requirement demands that we also minimize the number of kinks in the path. Therefore, I changed the problem from "navigate from start to finish by moving into any of the eight neighbor tiles" to "navigate from start to finish by either moving forward or rotating the direction of motion one degree". This creates a movement cost for changing direction in a way that doesn't violate the expectations of the A* algorithm. (Some previous attempts at this problem had attempted to impose a rotation cost, but they wound up creating non-optimal paths due to mangling A*'s data structures.) For convenience, I call this "roomba-style" pathfinding. And the results look a lot better while still creating optimal paths:

    FjIHFcP.png

    The downside is that the search space is now eight times larger, because instead of having each tile, we have each tile and the eight-way direction of motion (or none, but only the start space has a direction of none). The neighbor function returns fewer elements (turn left, turn right, or move forward), but A*'s main limiter is the search space, not the neighbor function. To explain a little further: the Wikipedia page on A* has a gif in a sidebar partway down that shows how the algorithm evaluates its possibilities as it tries to get past an L-shaped structure quite like the one I'm using. You can see how, after hitting the wall, it starts filling in other paths leading up to the wall before it finally finds the way around. The roomba pathfinder has the same problem, but eight times more severe: after it hits the wall, it winds up trying to find every combination of spinning in place and moving forward it can find to try to get closer to the goal tile before finally giving up and starting over from the beginning. As the navigation problems get harder, this downside winds up making roomba pathfinding take on the order of tens of millions of clock ticks to finish (in my test bed, at least), which is not acceptable performance.

    And, as it turns out, the whole point is relatively moot. In my previous attempts, I rigged up a "step through" function to paint the path that would be traveled by a theorhetical AI-driven agent toward the target tile if it re-evaluated its path at each step. Using that system, you can see that the actual path traveled is both different from the initial path calculated, and much smoother:

    Roguelike movement:
    gMRkunZ.png

    Roomba movement:
    sWKsV2h.png

    Finally, I returned to a simpler solution that I had started work on and never fully implemented: a path smoothing step that builds the final path by starting at the first tile in the path, finding the last possible tile it can connect to using beeline motion, and repeating from the end of that beeline motion until it hits the final tile. Using roguelike movement and smoothing produces a reasonably smooth path that actually looks quite a bit like the iterated roomba movement, in much less time:

    nmYdYlV.png

    And, at least in this test situation, follows exactly the roomba path in its own iterated version!

    uhOhQ8A.png

    Sometimes you just have to come back to a problem later, I guess.

    ***

    Besides all that nonsense, I put a little more work into the battle engine on RPS RPG. I made three fairly small changes:

    1) I added a virtual function to the generic AI controller class to allow derived classes to take a first crack at populating the command list before the generic AI procedure goes through. This allows for sub-classes to have more scripted strategies (for instance, "heals on every third turn" or "every turn, one of the three enemies will use a skill that shores up the elemental weaknesses of one of its partners". Not groundbreaking code work, but important for good gameplay design.

    2) I identified a serious problem in the generic AI with regard to its attitude on counter-attacks. The AI had always been confused as to who the target of a counter-attack would be, but it skated by because it considered all damage to be good. When I changed the AI so that it could judge damage to its own side to be bad and damage to the enemies to be good, it stopped using counter-attacks at all. That's because it thought the target of a counter-attack was the person who was performing the counter-attack. Or, in other words, the AI's line of thought was "So if he hits me, I will punch myself in the face really hard. That doesn't sound like fun at all!" I fixed the projected target of a counter-attack to actually be the enemy, and the AI started using counter moves again.

    3) I added the "instant death" action type for actions. Since this battle engine doesn't have a concept of explicit immunity to status effects (and is balanced around this by treating a boss character as an enemy party made of multiple characters), instant death is not implemented as a status effect, but rather as an all-or-nothing attack: if an instant death attack doesn't hit the target for all of its remaining HP, it causes no damage. To put it another way, instant death in this game works like D&D's "Power Word: Kill" spell. By convention, instant death attacks will have higher attack power than normal attacks (otherwise, it wouldn't make sense to use them).


    My next major goal for RPS RPG remains the same thing it was the last time I gave a report: create some kind of basic world map traversal and a GUI system for the battle engine, even if I have to use sprites with handwritten "CHARACTER PHYSICAL ATTACK ANIMATION" labels in them as stopgaps. (My previous world map system, I have discovered, will quickly run into problems with Unity's vertex limits on Meshes.) As an alternative, I may explore porting the battle engine to C++ both as a means of training myself in the use of C++ and also as a preliminary step toward moving the whole project into the UE4 space, either because I could use some N64-level 3D models rather than character sprites, or just because I increasingly don't trust Unity to make what I need made easy, easy (which is the point of a game engine).

    As I say this, I realize that my world map system actually has a comically easy Unity solution. Whoooooooops. Guess I'll wind up talking about that next time...

    My favorite musical instrument is the air-raid siren.
  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    edited October 2017
    I got some fire up my ass this weekend and started building a card system for a game that my wife and I have been working on a physical version of. (Real playing cards).

    So now I am making a card-style battle system in my 'spare' (hahahhah...hah....) time because THAT IS WHAT GOOD HUSBANDS DO. Heh. Doo doo.

    All that aside, card management is both easy and difficult - given that I am also designing this to support gamepad and mouse controls at the same time. Rather enjoying this break from my platformer game because I get to drink while I do this! YA! GO GAMEDEV GO!

    Here is a bit of visual testing for card management and what-not. I just added card flipping, dynamic drafting from the database, cardbacks, and the scaffolding for the enemies controller. Should have full battles finished before the morning, roughly 8 hours from now.

    Edit: Updated gifv.

    HallowedFaith on
    I'm making video games. DesignBy.Cloud
  • GnomeTankGnomeTank What the what? Portland, OregonRegistered User regular
    Was playing with shaders and custom drawing in GameMaker tonight. Made this cool charge trail effect.

    https://www.youtube.com/watch?v=GP-kopIii80

    Sagroth wrote: »
    Oh c'mon FyreWulff, no one's gonna pay to visit Uranus.
    Steam: Brainling, XBL / PSN: GnomeTank, NintendoID: Brainling, FF14: Zillius Rosh SFV: Brainling
  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    *Looks up all the stuff he wrote while drunk* I... am sorry for that lol.

    Onto gamedev news. I can't stress how much better GameMaker 2 is over GameMaker 1. I was able to finally fully switch over after porting SGB and working on this card game was actually the 'first' game started in GM:S 2.

    I find that GM:S 1 actually instilled terrible habits into my coding workflow and now I find myself trying to correct GM:S 2 when it does something smart. The plethora of efficiency changes are themselves small but they make a huge impact together. I've actually not felt this 'excited' about dev-stuff in a while. It feels really good to have nice tools and that impact has been more than surprising.

    I'm making video games. DesignBy.Cloud
  • KoopahTroopahKoopahTroopah The koopas, the troopas. Philadelphia, PARegistered User regular
    I should really get back into GM2, or Unity... or just game development in general. :bigfrown:

  • GnomeTankGnomeTank What the what? Portland, OregonRegistered User regular
    I still have some Real Programmer (tm) gripes about GML and the way it forces you to structure things...but I'm slowly figuring out ways that GM2 lets me structure my code and assets such that my programming gland doesn't hate me.

    Outside of those realpolitik programmer issues the speed at which GameMaker lets you play with and prototype things is really great. I've had a lot of fun just sitting down and focusing on whatever game play idea I have rather than the minutia of game engine stuff.

    Sagroth wrote: »
    Oh c'mon FyreWulff, no one's gonna pay to visit Uranus.
    Steam: Brainling, XBL / PSN: GnomeTank, NintendoID: Brainling, FF14: Zillius Rosh SFV: Brainling
  • CornucopiistCornucopiist Registered User regular
    I'm getting badly owned by Unity AssetBundles

    So far I've managed to figure out what is not deprecated (hint: everything people say about AssetBundles on Youtube is deprecated).

    I've installed the AssetBundleManager.

    My test code looks like this now:
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine.Networking;
    using UnityEngine.UI;
    using UnityEngine;
    
    public class L2GX_loadasset : MonoBehaviour {
        public Text tattletale;
        public string asset_url;
        // ex: "http://www.l2gx.net/assets/backgroundbundle.unity3d"
    
    
    
    
        void Start()
        {
            StartCoroutine(GetAssetBundle());
        }
    
        IEnumerator GetAssetBundle()
        {
            UnityWebRequest www = UnityWebRequest.GetAssetBundle(asset_url);
            yield return www.Send();
    
            if (www.isError)
            {
                Debug.Log(www.error);
            }
            else
            {
                AssetBundle bundle = ((DownloadHandlerAssetBundle)www.downloadHandler).assetBundle;
                tattletale.text = "Success!";
                AssetBundleRequest request = bundle.LoadAssetAsync("cactus", typeof(GameObject));
                // Wait for completion
                yield return request;
                tattletale.text = "This does not show";
                // Get the reference to the loaded object
                GameObject obj = request.asset as GameObject;
    
                // Unload the AssetBundles compressed contents to conserve memory
                bundle.Unload(false);
    
                // Frees the memory from the web stream
                www.Dispose();
            }
        }
    
    }
    

    So nut sure why the LoadAssetAsync doesn't work. The console error is 'failed to decompress data for the assetbundle 'http://www.l2gx.net/assets/backgroundbundle.unity3d'.

  • templewulftemplewulf The Team Chump USARegistered User regular
    GnomeTank wrote: »
    I still have some Real Programmer (tm) gripes about GML and the way it forces you to structure things...but I'm slowly figuring out ways that GM2 lets me structure my code and assets such that my programming gland doesn't hate me.

    Outside of those realpolitik programmer issues the speed at which GameMaker lets you play with and prototype things is really great. I've had a lot of fun just sitting down and focusing on whatever game play idea I have rather than the minutia of game engine stuff.

    Yeah, I haven't even really gotten to the gameplay parts of my game in Unity yet. I'm still not satisfied with my menu solution, but at least it does what I want it to.

    GM2 looks pretty hot, but those prices! I could handle the $99 for the Desktop version, but do the others ever go on sale?

    Twitch.tv/FiercePunchStudios | PSN | Steam | Discord | SFV CFN: templewulf
  • RoyceSraphimRoyceSraphim Registered User regular
    Something satisfying about playing with renpy over gamemaker using my old PC is that I can test and reload assets in seconds verses the "sandwich and coffee" timeframe of gamemaker.

  • HallowedFaithHallowedFaith Call me Cloud. Registered User regular
    edited October 2017
    GM:S 1 for sure, but not GM:S 2. It's so damn fast. (Edit: At least on a decent pc)

    HallowedFaith on
    I'm making video games. DesignBy.Cloud
  • templewulftemplewulf The Team Chump USARegistered User regular
    Oh wow, GMS2 is super slick! I downloaded the trial version, and it is leagues ahead of v1. It's super polished, and the tutorials are nicely integrated.

    I'm suddenly taking it way more seriously.

    Twitch.tv/FiercePunchStudios | PSN | Steam | Discord | SFV CFN: templewulf
Sign In or Register to comment.