Sunday, September 20, 2015

Pool game is coming close to being finished kinda. But construct 2 issues kinda.

So far I have gotten most of the code done for the pool game, incorperating various controls, various input methods, and various players has been a bit difficult. Especially for various platforms.

Currently the pool game is soundless, so is various of the games, I have in project dreamout, The other thing missing from the pool game and cups game is a main menu, currently I will have the pool game work with 1 game mode, of 1 team vs 1 team in a single player, 1v1,2v1, 2v2, &  3v1 mode. Currently I am working on the multiplayer menu & incorperating all the amounts of players when it comes to gameplay. I am rather close to a finished result in this regaurds, but sound is the major thing missing, it won't take long and it will be one of the final steps in polishing this up some.

Currently the whole project is getting close to 1120 events, which when looking at what all the code is doing it is easy to see why, especially when you take into consideration that I utilize the function system for my controls, something that should actually make it easier but because of construct 2 developers refusal to actually utilize unknown variables into called functions it makes it difficult to actually do. So instead of having a loop index value being the only difference between two unquie objects code I have to duplicate code regularly.

Example 1:

on p0b0 if pool_cue.pID = 0 simulate movement left on pool_cue

on p1b0 if pool_cuep.ID = 1 simulate movement left on pool_cue
on p2b0 if pool_cuep.ID = 2 simulate movement left on pool_cue
on p3b0 if pool_cuep.ID = 3 simulate movement left on pool_cue

Example 2:
for(int playerID = 0: playerID != playerindexConnected; playerID++)
         on "p"&loopindex("playerID")&"b0" if pool_cue.pID = loopindex("playerID") simulate movement left on pool_cue

What does this mean? Well basically the first example 1 is what I am forced to do because of their restrictions. The second example is what I can't do, but want to do because its simpler, eats up less events, and makes code much easier to read for me, much more cleaner to have 1 complicated piece of code rather than what is there.

I have brought this up countless times to construct 2 development team and all they answer with is will not implement, or update, or patch. Which really boils down to their response with anything till something is totally broken which they restrict rather than fix problems usually. With using construct 2 I have had to more or less work around the engine and everything they do to restrict the users, which is a shame from a game engine. It is a good one when it works right, but it has various performance issues with its objects even with the simplest of objects. You are constantly working around it for better framerates, example: Don't use text objects, spritefonts are better, Don't use spritefonts, sprites are better. Don't use sprites backgrounds are better for processing, Don't use patch, sprites are better. Don't use sprites, tilemaps are better. You will always be working around it in some way.

Issues with video plugin, video plugin has many issues. One of which being you have to use the same video 3x if you want it compatible with the most platforms, as some don't support video formats apparently. This means 3x the file size, so you better learn to compress it real good without losing quality because it re-loads the video each time it has to play.

The debugging tools don't tell you much about the source of any kind of framerate drops, and it becomes very difficult figguring out all the objects causing dropped frames, when you have even more than 10 objects, and sometimes its the code and how it is done to work around construct 2 issues. For instance the fact that there is no way to zoom with the camera, you have to scale the layers or layout(for pause menu's you might want to do just layers same thing with hud concepts you want to keep the same size no matter what). Sometimes it is just simply having too many layers, each layer creates a viewport, each viewport can take up heavy processing especially if you are messing with the scaling which you might be forced into doing, and you will want it to lerp the zoom to create smooth zoom effects.

So often not only do I have to find ways around things but I have to re-optimize the code and simplify it to as much as I can, often this process can take a long while of re-working plenty of code to bring the events down but rather dealing with complications and big bugs from doing this. It can delay a game from being nearly done too being done in years.

Not to mention Dreamout uses third party plugins & offical non-built in plugins made by scirra for various platform support, which are very much incomplete, often creating arrays to work around them.

No comments :

Post a Comment

Please be kind to others, and my self.

Rss Feed

Undeadbobop's blogs

↑ Grab this Headline Animator

Labels

construct 2 Nintendo game ouya wiiu review android games windows pc linux Chrome google Microsoft development mac web Dreamout controller free scirra chrome os chromebook play steam Sega controls programming #nintendo 2d Apple DRM Wii template unity Dream gaming help store valve video youtube 3d How to bus construct game development gamepad menu music out rush update video games HTML5 SEO bad chrome book console custom driver experience javascript online tutorial 360 GNU/Linux Iphone Pokemon go art code engine font iOS os software sprite support website xbox Saturn adventure app assets cheap clone css down fix gamejolt internet level life opengl phone sale sound spriter work 3ds Fishing Game development companies in detroit Nintendo Switch Playstation Scam Sony Sucks Ubuntu acer adv advance amazon book chromeos computer delay drawing effects emulation example gamestop gimp halflife java kongregate modeling network nvidia pack platformer problems project ripoff security sonic spritefonts starter system undeadbobop windows 8 2014 Beginner C# Corsair DLC Developers Dreamcast Genesis Mario Mario Kart Micro-transactions Photoshop Things Virtual abuse acer 11 ads advertisement application apps arcade bing blog blue bugs c++ coin construct 3 construct2 design develop directx email emulator face faceplate fail functions game development tools give away googleplay issues itch.io lies link make money nes of optimization options patch php plate pool pro retroarch snes source summer terrible tf2 tools top trirectimo up usb virtual console voice vs webhosting worst xml zelda 1 2 3 submit pro 2 5 AI America C# XNA Gamestudio CD Call of Duty Cast Comparison Controller Pro Controller Pro U Copy DVD Digital Direct Discs Doom Drive East Detroit Eastpointe Eshop GBA Golden HTML ID Marker Megadrive Moore Mupen64 Nights Old PS2 Personal Peter RSS Record Retropi RollApp Screenshots Secret Sega Genesis Ultimate Portable Game Player Sega Saturn Skateboard Switch TV USA WoW XBL Zelda breath of wild ad adsense adv menu alternative angry art work assault atari audio away balls best bfxr block blogger bo's bobop brick bride bug build bundle bus driver 2d experience rush capture card cards cat character choice chrome web browser club color command commercial connect contest corruption crash create crush dead demo depression descriptions done download e3 easy education ethics event evil family features feed flash fonts fps fraud free software fx galaxy game development companies game development companies in michigan game engines gameplay get gif give gnu google chrome graphics greed guide hackers half halflife 3 halo head honest hosting is issue item items jam jolicloud keyboard kick kickstarter kitten kitty lag lan learning liars lock low making manager maps menus micro minecraft mobile mods monogame movie multiplayer netplay networking new news noncommercial not odd off one paint pewdiepie pie players playing plugins pokemon port program quake quick raspberry pi red remote require rip road save saving screen screenshot screw script sdl search sega genesis server settings site skate skeleton small snapshot song sounds sprite sheet steamos team tegra templates text tic tac toe to tool top 10 touch tree unreal use useless version videogame virus ware web server webgl wedding wireless world xbone xbox 360 xbox one xboxone zombies #e3 $oft 10 10 ways 200 2015 25th Anniversary 2600 3.14 343 3:4 ratio 3DTin 3d modeling 5 nights 64 7 7th guest 8 90 API ARM AT&T ATOM ATT AVGN Ace Adriano AlphaOmegaSin Android disable ads in games Animation Backlinks Balmer Batdan Bernie Bethesda's New Review Copy Policy Bill Blackjack Blackmail Bluetooth Boarding Bros Bully C++. directx Cities Classic Computers Consoles Cool Corruption in gaming news journalism Creators Cyanara DDOS DMZ DNS Deluxe Detroit Dogs Dragon EA EULA Eco Edge gamepad Edition Emio Encore F.E.A.R. FCC Facebook Facebook account hijack Fanboy Feeds Feminism Footage GPL Game review Gamer Gates Genesis Ultimate Portable Game Player God Gold HD HDMI HP HTC Vive Halo 2 Halo 2 Anniversary ID Tech IDE IE IGN IOS 9 ISP IT Impact Impressions Install Irate Irategamer Jaden smith Japanese Jim Kainy Kart Kim Jong-un Knuckles Kotaqu LG LGBT Las Vegas Last Launch Lenovo Library Linksys Lycoming mall Mad Mad over Mario Galaxy Marker sprite font Metro Michigan Microsoft store in michigan Microsoft wordpress Monodevelopment Moon Mortal Kombat Mote Movies Mysterious NX Navel Nes classic Next Nintendo 64 North Korea November OC OS X OSX Ocarina Ohio Omega Onedrive Paradise Paths Performance Pokken tournament Pikachi controller Projared Promotion Pygames Pyshell Python Python Fiddle RPG Rage Released Remix Retrobit Retroduo Retrogen ReviewTechUSA Rock Rock Paper Shotgun Rockstar Roseville SMM SQL SWF SWJ Samsung Scholarship Shaft Ship Sin SkyDrive Smash Sprite font Star Starling Steam controller Steven Stolar Sun Super Mario Super Mario Maker Super Smash Bros Tails miles Tech Text adventure The Interview The Letter Tony Hawk Total Media Town TreeFall Studios Treehouse Tuner Twitch Ubisoft VBA VLC VR review Valor Vegas Vengeance Video game art Watch Watchdogs Wino WoW! Woofle XBLA Zilla abandon abandonware accessories accounts acting ad free adapter add on admin adreno advance menu system advertisers affordable airplane algorithms alone alpha always amazing amazon app store amd animal animate animated animations app developer in detroit Michigan app development appegg appspotr arch array ashleey asus atgames attack audience auto back back links background badges bag bags bandicoot banks bar base basic basics basketball battery battle. DLC. link bayonetta beating bed bgoat big bios bioshock birds birthday bit bites black blackberry blade blast blender blockstorm bloodmoon blur bo boom bored boxes boy breaks bricks broke broken brotherhood browser bsd buck bucks buggy bungie bust buy c++. html c64 cable can can't canceled candy capcom car care caret-t caster cb3-111 chair challenges change cheaters cheating checking chimp chimpmail chrome cast chromebooke chromecast app clara clara.io classical clearance client cloud applications cloud computing cocoonjs code envy coding college colour comedy comments community compatibility competitive market complaints complete roms list computer AI connect 4 connecting cons constroller construct 2 gaming engine construct 2 gaming engine plugin construct 2 holiday plugin construct 2 plugin construct 2 time and date plugin content convict convict gaming cost costume couch counter counterstrike court cpu crafting crap crazy crd creating creation creativity credit crossing crusher ctf cubes cue curse cursor customization templates cylinders daniel date object deathmatch dell desert desktop desura develoming developing development kit dial dialup died difficult dig disabilities discontinued dishonest disney do doesn't work dollar dos downfall drag dreams drug store ds duckduckgo dug dumb dumbphone easter egg eastside ebaulms edge electric electronic email list eminem emu emulators end engines enlightenment entertainment environment ethical practices ever exclusive expand expired site exploit eyes fall fallout fallout 4 famous fan art fast fear fees feminist file fill fire firefox firefox marketplace firefox os firewall firm firmware first five flaw flickr football for forget forgotten domain fortress fox frame frame rate framework freddy's free money free to play freeware fried friend friendship full fullscreen fun gambling game asset pack game list game maker gameboy gamegear gameinformer gamemaker gamers gaming assets gaming easter eggs garrys mod gas gears gender glitches glove go good goofed google play google+ gore gorescript gpu grand grandtheft auto gray greedy green grey grid groom gta guestbook gunners h2100 hacking halflife 2 handheld hard hardware harmony hawk headphones headset hedgehog hell hexen highschool highscore hijack hl1 hl2 holidays home homebrew homicide hook hotel hotmail humble humor hyperkin hypermart illegal image images improves index color indie indiedb industries industry information informer inn input input device insomnia instinct institute instructors intentional internet explorer internet radio interview introduction ion ip ip address irish iron island isometric jack james jelly jif jiggly puff jiminquestion job joint joke jokes journalism joytokey js k70 key keystation killed killstreak kingdom hearts kryo land lash law legacy collection legal length lerp liar lib GDX light lilly lithium live load locked logic logmein lonely loop lost temple text adventure ludei lynx machine macomb community college macombacon mail mail chimp make money fast makefile maker manifest map market market share marketing marriage married mass email subscription service master mechanical media megaman melody menu system meow midi mii miitomo mike mike v mind mini mini game minimum wage minish cap misleading misleads moddb mode models mogotxt moltres monetize monitziation montization monzilla mouse murder musial mussels mystic n64 nba need nerd net netlink nexon nfl nitch no notepad++ now nurse nyan o'reilly odk office offline oh operation out of order out of service out there overscan p2p p2w pad paid pandora panic papagayo paper weight parody party pause pay peer peerblock pewdie phishing phones photo pi piano picture pin pink pixel art plagiarism plants plants vs zombies plastic platinum player playzool please plus poke balls poker pokestops pool table popular populate portable posts power practice practive pre-order premade presentation preview price private promises promote provider ps1 ps3 ps4 public purple qlife qualcomm quest rack radio raffle ram random rant rare raspbian rate razer recommend recording red cherry redit remove renaissance repair representation resources rest retirement retrode retron 5 retry rewards rigging ripper river roads rolfe rom roms routing saga same score screen sharing screencastify scroogle scum seamless seed sega dreamcast sega master system sequel servers service setup seven card shapes share this shareware sharing shield shit shockwave shooter shop shot signs simple slavery sleep slip slumber smart smartboy snapdragon soda solitions sparks sparky spartan specialized spheres spoiler free spotify spyro spyware stakes steam box steam gamepad steam os sterling stop storm strategy game strategy guide stream streaming strike stud studio studios styles subscribe success super super mario maker bugs super mutants sync systems table tac tags tamagotchi target target marketing tax taxes teachers teaching team fortress 2 crafting teams temple run temple run 2 terrorists testing textbase texture packer the king's league odyssey the world theft this thoughts thunder tic tile tilemap time time date tin titles toe tony top 5 topic matter torque touchpad toys trading travel traveling trees tube understanding news feeds unearthing unethical bots union unusual usb 3.0 usb y users vc vidme view views villager vimeo vine vintage virtual reality volume voxel wall wallet wan wave wayback web design web server ultimate webmaster websitesubmit webstorage webstore what is my ip white will Smith word wordpress workaround workshop xbox gamepad xboxdone xeno xenoblade xhml xl xna you yourself zapdose zip zombie

promotions