Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411283 Posts in 69325 Topics- by 58380 Members - Latest Member: bob1029

March 29, 2024, 07:14:24 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsComputer Virus Simulator - Patreon is live!
Pages: 1 ... 3 4 [5] 6 7 ... 15
Print
Author Topic: Computer Virus Simulator - Patreon is live!  (Read 56877 times)
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #80 on: September 12, 2015, 03:34:37 PM »

Today, i.e. Sunday, I'll be working on improving Playable Main Menu scene in order to prepare new testbuild for people to give feedback on (mainly movement, pretty much like previous one because I got signals I need better scene to reliably judge it).
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #81 on: September 14, 2015, 12:39:04 PM »

I've put up second testbuild of Computer Virus Simulator. Basically I'm looking for pretty much the same kind of feedback as with first one, but this time scene is more elaborate. Details and links in Computer Virus Simulator feedback thread
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #82 on: September 14, 2015, 06:17:51 PM »

I've decided to add a blob shadow for The Virus so  you'll be having easier time knowing where you'll land. Not in testbuild though.

You can get testbuild #2 here, for free: http://forums.tigsource.com/index.php?topic=49705.msg1179456#msg1179456
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #83 on: September 16, 2015, 05:40:03 PM »

Just realized I forgot to put up picture of how blob shadow look in the game. Let me remedy that:



Thanks to it, you can precisely where you'll land.

I need feedback on Virus' movement. You can get testbuild #2 here, for free: http://forums.tigsource.com/index.php?topic=49705.msg1179456#msg1179456 in order to help me do that.

It doesn't unfortunately feature blobshadow as this feature was developed after build was released and testbuild #3 isn't scheduled until after I get few levels (that won't make it to IGG pitch demo unless I'll come to particularly like them) done with actual gameplay. But it is functionally identical otherwise.

Tomorrow (if Rocket League allows me, heheh Wink) I plan on do final level editor save/load testing (need to check if level header and level goals are being saved/loaded properly) and start working on game level loading.

This require me to do bunch of new prefabs that are gameplay-aware (prefabs used in level editor don't have to, so they aren't) and write whole bunch of code such as AI and (most importantly) trigger processor.

Also I need to write level editor documentation on (at the very least for now) triggers so behavior is consistent and I can easily look up what trigger does what and which parameters it needs.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #84 on: September 18, 2015, 06:22:12 PM »

Well, it turned out that Rocket League didn't allow me to do that for the past two days Wink. Damn it, I need to learn to keep my mouth hole shut or I'm gonna end up like certain man called Peter Smiley.

Anyway, as I suspected loading header data wasn't working properly, but I've fixed it and now it works all right. I've also fixed minor lighting glitch that was happening in the level editor and was driving me nuts.

In few moments I'm going to start a new scene which will be the basis of the game's engine (things like loading levels before play and gameplay).

Don't forget to download testbuild #2 and give feedback on the Virus' movement - I want controls to be as good as possible so I need help!
« Last Edit: September 19, 2015, 07:42:24 AM by darkhog » Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #85 on: September 19, 2015, 07:46:37 AM »

Ok, fixed spelling errors in above message. Anyway, I've started documentation on the triggers:


Yes, it is dos font and yes, it is supposed to look that way (the whole thing works using @font-face feature of CSS3). The table is built using DOS semi-graphics instead of <table> element to keep DOS feel.

I'm thinking about showing it in-game using Awesomium unity plugin (basically it lets you embed a browser inside of game) but not sure yet if I want to do that or if I want to launch regular browser instead.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #86 on: September 24, 2015, 07:54:05 AM »

With trigger docs done, I am now figuring out how to do trigger processor (so triggers will actually work). This is something I've never done before (neither was level editor when I first started it Wink), so it will take some time.

I also will be working tomorrow on in-game level loading. Need to prepare prefabs that are trigger aware and start work on spawner that will spawn them once level finishes loading.

I may be streaming it on twitch. Follow me on twitter (@thedarkhog) to know when it happens (will tweet about it before stream starts).
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #87 on: September 25, 2015, 03:18:12 PM »

I've done basic stub of the trigger processor. I could do a full-blown one already, but I want to do it properly so there's a room for expansion. I have basic plan of how it will work like, but need to think about it for a bit.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #88 on: October 01, 2015, 08:00:44 PM »

Loading level in level editor was easy. It is loading level in runtime that is giving me headaches. First things first. The difference are as follows:
- I can't reuse prefabs from level editor (reasonable obstacle, easy to overcome though mind-numbing and boring)
- I need to build level loader here around concept of "groups" - each level can have up to 18,446,744,073,709,551,615 groups which should be enough for level of any size. The group is smallest unit that can be affected by a trigger. Group can have any number of objects in it. Therefore I had to figure out how to quickly find and manipulate groups from the TriggerProcessor script. That part is solved.
- I can't start writing level loading routine before I figure out how to handle certain triggers that have effect over time (for now just trigger #3, Damage, which takes parameter damage per second, though in future this may include other triggers) in a way that doesn't make my codebase a mess.
- I need to finish TriggerProcessor before I'll start to make level prefabs as the way I'll handle stuff in TP will influence the way level prefabs need to be set up. And I can't do this, before I won't resolve previous issue. Chicken and egg problem to an extent.
- I need to write pretty big amount of character-related scripts, such as player health, hud, base powerups.
- Finally I need to write basic AI for (the only) type of enemy we have now, the AV agent. This can take place after previous steps are taken care of and levels are loading fine.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #89 on: October 02, 2015, 02:04:44 AM »

I feel like I am in a similar situation right now (I'm trying to prepare things for networking). To get what I want there are so many small steps I still need to take, some of which are dependant on others. It's pretty daunting, but you'll get there Smiley
good luck!
Logged

darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #90 on: October 02, 2015, 08:06:07 AM »

Oh, I'm sure I'll get there. I'm off to work on the Groups stuff (it still isn't fully coded, but I have figured it out). Thanks for the words of support, you have no idea how much these means fro me.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #91 on: October 02, 2015, 09:06:30 AM »

Will be streaming shortly me figuring out Computer Virus Simulator's game hud.

Catch me at twitch.tv/qvear
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #92 on: October 03, 2015, 11:00:47 AM »

I've made a stupid mistake months ago, when I was designing level format structure that I've realized just now.

I've made GroupID an ulong, but then made integer trigger params... ints. This meant that you wouldn't be able to access groups with IDs outside int's bounds via triggers that needs groupID to be present.

So today I've made a change to the level object which makes Group ID field a long (since it can't really be ulong anymore as integer trigger parameters needs to be same type as some trigger may need negative numbers or you could use negatives to achieve cool effect, for example if you set Damage trigger with negative number, it would actually heal the player). For groups you still have 18,446,744,073,709,551,615 values, just in –9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 range. Negative group IDs are weird, but it is the only thing I can think of to make this working.

Of course this change has broken the level format as such changes tends to do. No big deal since game isn't released yet and there's no user content for it.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #93 on: October 08, 2015, 05:22:47 AM »

I've started to work on pathfinding for the AI. I've got a bit weary of the level loading stuff and since I'd have to implement it sooner or later, I've decided to do it sooner.

Don't forget to test out 2nd testbuild of Computer Virus Simulator and tell me about any of the issues in the feedback thread.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #94 on: October 09, 2015, 07:43:51 PM »

Today I've worked more on a new test level.

I've decided that it'd be best to stop working on pathfinding for now and first finish runtime level loader and trigger processor. For that, I've decided to make it a simple "puzzle" level, devoid of any enemies. I will show you screenshot of it when it's done, but the basic gist is that you'll have to push 2 buttons to open door to the level end, one after another.

Of course, while something like that will be probably in the game, game's main focus isn't (as for now, can't know the future) on the puzzles but on frantic action.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #95 on: October 19, 2015, 04:29:02 PM »

Worked some more on pathfinding. Now my AI can walk in the straight line to the player object. Need to make it avoid obstacles now. Will play Mario64 some and try to get some ideas from there. It may be that I won't need to implement my AI idea to the full extend as basic enemy (AV Agent) would basically have AI of a SM64 goomba. What do you think?
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #96 on: October 19, 2015, 07:20:03 PM »

mmm
Logged

darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #97 on: October 20, 2015, 07:08:09 AM »

mmm

Is it "mmm, I like it" or "mmmaybe you should be doing something else" Wink? In any case, thanks for commenting. You have no idea how motivating for me are even the simplest comments on my work. Thank you again.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #98 on: October 27, 2015, 01:42:18 PM »

I had a little trouble making "sensors" for my AI work, related to raycasting, which are fortunately resolved. Unfortunately, even though I don't want to, I probably still will use "dumb" AI like goombas in sm64.

You see, my idea of pathfinding was not to use any existing algorithms such as A*, but to do this in a way humans find path to the target (given they're not using a GPS Wink).

First thing is to position yourself so you look in general direction of where you want to go. Then, when you encounter and obstacle, you either step over it, jump over it or if it's too high, go around it, keeping note of the real direction where you want to go and periodically checking if you can go again in direction of the place you want to get into. You also want avoids any pits so you treat them as impenetrable objects)

That can be coded relatively easy, check for getting stuck on obstacle can be done by probing object's position and checking if distance made between checks was of any reasonable amount. Checking if object is too high to jump/step over can be done by casting ray in movement direction and upwards (45 degree angle) - vector of (0,1,1) where Z axis denotes front/back. Checking for pits is also easy, you just cast ray to the front and downwards, vector of (0,-1,1) and check if it returns any object - if no object is returned, you got a pit.

The problem is that this solution... is very 2D.

What are you doing when your goal is above of where you are? You're looking for a thing like stairs or an elevator. Or ramp. Same when your goal is below your current position. I haven't found solution for coding that in.

There are also two sensors/rays that are cast upwards and downwards. The upward sensor can be used for checking if there's ceiling above AI agent so it won't try to jump in tight spaces as this would just look silly and bottom one is used to check if AI agent is grounded so it won't try to jump in the air.

So, in the end I'll end up with dumb AI that just bumbles around. It still will be smarter than koopas and goombas in sm64 as it will be using that sensor technology to avoid cliffs and high obstacles (while jumping over small ones) and will only attack player when it has been "seen" (intersected with one of eye sensors). It will just not be as smart as I wanted it to be.
« Last Edit: April 29, 2016, 09:47:55 AM by darkhog » Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
darkhog
Level 7
**


Dragon Agent


View Profile
« Reply #99 on: October 30, 2015, 03:26:07 AM »

Implemented trigger processor today. Now I'll be doing level context-aware level objects, for now just basic cube, to do rudimentary level loader and test trigger processor.

This going to be... boring. But it's necessary to do if I want to get to more fun stuff like writing AI scripts Wink.
Logged


Be a computer virus!


I cannot C well, so I stick with simpler languages.

There are no impossible things, there is only lack of skill.
Pages: 1 ... 3 4 [5] 6 7 ... 15
Print
Jump to:  

Theme orange-lt created by panic