jayderyu's Forum Posts

  • This question has been asked before and answered. It's somwhere a few months ago.

    C2 is for prototyping as much as Unity is.

    However it must be made clear that while C2 is super duper easy to get into. It's also requires super duper dilligence in good game design. I have never seen the possibility of such poor design for programs since Basic. A lot of languages today structure themselves to make sure you can't make super duper bad code.

    As an example C#, Java are pretty rigid.. but C2 ES is prone for nw C2 devs to mess up badly .

  • The array system is not broken it's just peculiar. I've worked with all 3 depth for it.

    C2 stores the 3D arrays as XYZ.

    X

    Y

    Z.

    X is root.

    Y is the sub of X

    Z is the sub of Y.

    now I'm sure you you already know this. heck I knew this before using C2 and I still had problems getting around C2's array. I still don't like C2 arrays and wish they worked as the variables work. However it doe work and you can work with them. GL though.

  • You can already do this.

    1. Create an Object that contains everythign of the object your going to replace.(ie everything it has, and what you may need). Names needs to be the same too.

    2. Highlight the EventSheet.

    3. Right click. Replace object.

    4. Choose what object to replace.

    5 Choose what object to use.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Glad you found it.

    Just a hunch, but I don't think Pathfinder was supposed to work with inverted cell size.

    Cellsize of 64.

    Cellborder -35. Since borders exist on 4 sides your cellborder results in 70 with an effective -6 check. So the fact that it works is probably inadverant luck rather than by design.

    You should probably re-doe how your using cellborder. Though good find for a bug. It's obscure.

  • lucid

    Sounds really interesting. Almost like some form of image library. Looking forward to seeing. You have been doing an amazing job on the project.

  • ludic

    That is a good idea and glad that was thought of. As a possible thought solution might you consider.

    Instance variable the C2Sprite with SpriterName which values to the SpriterObjectName. That way we can use

    Compare Instance Variable = SpriterObjectName.

    Then that way we can still independently move the parts while still getting some nice benefits of fewer individual Spriter/SpriteObjects.

  • tumira

    WebRTC is possible. But it seems that it will be reliant on a PhoneGap plugin. However it's far better than no possibility. WebRTC/AdvancedAudio/WebGL really are the big hurdles.

    https://github.com/alongubkin/phonertc

    GameThirsty

    As a general guideline. You really should use DOM with Canvas. Canvas is it's own renderer. They don't ever mix. It's steel and air. You will be able to probably have both on the screen at once. But you could even on higher end devices kill perfomance. However if t's not performance intensive then probably not a problem.

  • QuaziGNRLnose

    Gratz on your Q3D. This is full scene rendering I take it?

  • Doable, but it will be a lot of work. Also users will have to install a few pieces of Android SDK/Java SDK. But personally with NodeWebkit supporting a kind of packaging. It would be great that C2 used this unpack chrom apk, inject into chrome, re-pack and re-sign. With MANIFEST options in the C2 and using one of the icons in the icon list. It would be a great tool.

  • Itès probably not the Touch Event and position itself. It is likely other stuff you have in the event. Without knowing your code there is no way to help. Either share a capx of the problem or at least a screen shot of the code block.

  • Roccinio

    I asked for this one before. That Spriter should try to use less Sprite objects by using frames and Sprite.Animations.

    That way you can have 1 single Sprite. How this would work is by

    Sprite.Animation would be the an object in the Spriter software.

    And the Character Map can continue to Frames.

    Right now my character mapped Spriter animations don't make use of Sprite.Animations. So it's a waste to creating so many parts when just putting the parts into a Sprite.Animation would be soooooo much more effecient.

    Otherwise it's a few pages back. but the current model of handling Sprite object is a mobile killer. And not just for weaker devices. But also any game that want use Spriter as a major component for most animations of anykind of robustly animated game.

    It's ok for a few sprites, but not as your suggestion. And it's unfortunate because the Coin example is in the default sample pack. Wher the idea of using Sprites for all animated objects is the idea of getting Spriter to do a lot of grunt gaming work.

    Anyways. This change would probably be a large change for both Lucid and Ashley. But personally I think it needs to be a mandatory change. And Rocc you have a good point why. But it's certainly not just for weaker devices.

  • There are three points I would like to add into consideration.

    IOS Safari doesn't do much with the audio until the first touch. This is a Safari browser problem. I'm not sure if this relates to preloading or not. But it might.

    Second. I found that some audio files just don't load correctly the first time. Some times I will have a sound fx that just won't play the first time(or preload). Sometimes I will have a song that won't work the first time. Usually if I edit the song in audacity and cut the first second out it fixes the problem. I have no idea what it is or why. It's really annoying.

    Three. Ashley says in the documentation that trying to preload more than 5 files at time may not work out so well.

  • I have to agree about the multiple light sources. That is a problem. In game where light is used for strong atmospheres say a dungeon. Then the light sources creating proper multilight layout is important. The situation where C2 Light system is designed for primarly a single source lighting need to be reworked from proper multi light source.

  • You can't. It's been asked starting 4 years ago. And here is why.

    C2 uses an JS call called "requestAnimationFrame" from the browser. The browser is the final gatekeeper renderer and will never render above 60fps. Also the browser only ever renders based on the moniter/hardware syncing.

    C2 internal game loop was not written from the ground up to render cleanly at 30fps. Ashley tried to do a quick version. It didn't work out so well. For a proper controller FPS rendering would require a large re-write to the game loop. Stacked with the fact that Ashley doesn't believe that it's worth it there will never be controller FPS rendering.

    The only option is to let the game render at 60fps and instead control your logic to 30fps. Infact due to Ashley going over the technical reasons why C2 can't have controller FPS. I've been pushing for an advanced model of logic updates to use 30FPS.

    Truth is logic doesn't need to be updated 60fps. you can do 30fps logic updates and still play silky smooth. The benefit of this is that if the FPS drops below 50fps then you never notice. Ashley makes claims other wise that even at below 50fps games run smoothly. This is not true, but doesn't matter.

    So here are yoru options than asking for FPS controll.

    use Len suggested Every 0.033 tick. And stick all your logic into a new logic kernel. This is your best option.

    Your other option is to use R0j0Hounds Canvas plugin.

    Make 1 visible layer with Canvas. Make 1 visible layer for HUD(SpriteFonts dont render on Canvas).

    All other layers on invisible. If C2 has no changes to show then C2 won't render the scene.

    Every 0.033 tick. Make all other layers visible. Then render all layers to canvas. Turn all layers back to invisible(except HUD and Canvas).

    This will result in your 30fps rendering.

  • DOM Apps should use TextBoxes, TextAreas.

    Games should use SpriteFont. First the basic Font that comes in SpriteFont is NOT meant to be used unless your doing retro games and you need black. You should ASAP switch to a different font. Do a forum search for GiveYourFontsMono.

    next make the Font BIG. I mean 72pt big in the GYFM program. Scaling down will retain quality. Scaling up loses quality.

    As for Unity. Unity may use two different version. Font Rendering and Sprite Fonts. I usually Tk2D Font system used and there sample Fonts use big sprites ie 64x64 per letter.