Mirage Source

Free ORPG making software.
It is currently Thu May 23, 2024 11:31 pm

All times are UTC




Post new topic Reply to topic  [ 21 posts ] 
Author Message
PostPosted: Tue May 22, 2007 1:25 am 
Offline
Newbie

Joined: Sun Jun 18, 2006 4:10 pm
Posts: 21
First and foremost, I'm not sure where this should have gone, so I placed it in the General Chit Chat section. It's basically an optimization tutorial, but also a question, so I wasn't sure...

There is an FPS cap over the entire client-side MS engine, in the GameLoop Sub. Why the whole GameLoop?
Code:
    ' Lock fps
    Do While GetTickCount < Tick + 60 ' <-- The 60 is the limiting number.
        DoEvents
    Loop

The 60 limits the FPS to 16 on every computer that plays it; the framerate cannot go above 16. However, if you change the number limiting it, the FPS increasing depending on the player's computer.

Why limit it to 16..? It makes the game look more choppy because the human eye requires at least 24 frames per second to see a smooth animation, and a higher frame rate makes it even more so.

The reason this happens is there is a main sub called the GameLoop that calls the functions of moving, blitting, and basically DOING everything over and over, making the game constantly run.

Inside the gameloop sub, there is a certain spot that blits players. If you actually lock that spot instead of the entire sub, then the game can run at a higher FPS, and the players move at the same rate (the 16 FPS rate, but at a higher FPS).

A simple way to do this is this:

1) Add a variable called "TickMove" or something of the sort, and add it as a Long variable inside the GameLoop sub.

2) Lock the spot that checks to see if the player is moving, and limit it to a certain timeframe (Such as 16 times per second, 16 FPS, like earlier, before we did anything.) to disable the player shooting across the screen in a rather unruly manner.

To do this, go to the GameLoop Sub, and find where it checks to see if the player is trying to move. ("Call CheckMovement")

Put the lock around the Call procedure:
Code:
    ' Check if player (index) is trying to move
    If GetTickCount > TickMove + 60 Then
        Call CheckMovement
        TickMove = GetTickCount
    End If


This makes it so your player now moves at the same rate that it did when the FPS was locked.

In order to make it so NPCs and other players move at the same rate as everyone else, make a variable for the action and put the lock around the it as well:
Code:
    If GetTickCount > TickNPCMove + 60 Then
        For i = LBound(MapNpc) To UBound(MapNpc)
            If MapNpc(i).Moving = True Then
                TickNPCMove = GetTickCount
                Exit For
            End If
            If MapNpc(i).Num > 0 Then Call ProcessNpcMovement(i)
        Next i
        TickNPCMove = GetTickCount
    End If


Now finish it off by adding it to anything else that needs limiting to the base FPS (16 FPS).

So far all you've done is make it so the framerate increases, and nothing is smooth... would you like your players' movement smooth? Check the question below. (They are still a part of the post, not just a debug section or something of the sort)

Questions:

My players are still really jumpy, and they do not walk smoothly, why?
This tutorial doesn't fix the amount of times that the players appear while walking or running in their animation.

A player presses.. let's say... left once to go left one tile. While a player is walking, the character gets blitted however many times the gameloop sub is called (The same number of times as your FPS), but the player isn't actually shown on each pixel as it moves. It jerks from right to left when walking right by a certain number of pre-determined pixels, WALK_SPEED.

The base MS WALK_SPEED is 4, which means that the player gets shown every four pixels; eight times per tile walk (32 / 4 = 8). Also, every time that a player walks one tile, it takes exactly 480 ticks, or milliseconds.

The base RUN_SPEED is 8, which means that the player gets shown every eight pixels; 4 times per tile run (32 / 8 = 4). Also, every time that a player walks one tile, it takes exactly 240 ticks, or milliseconds.

In order to make the players get shown more times per tile move (instead of jerking over 4 tiles, you can make it jerk over 2, making it look smoother), change the WALK_SPEED and RUN_SPEED to lower numbers. (ie: 2 and 4)

!!BE SURE TO KEEP THE NUMBERS AT LEAST 1 AND AT MOST 32!! The two numbers HAVE to be divisible by 2 (unless the WALK_SPEED is 1 and the RUN_SPEED is 2), and a factor of 32. (1, 2, 4, 8, 16, and 32) This way, XOffset and YOffset don't get thrown off into some weird number, and render your player motionless.

If you change WALK_SPEED to 2, the player will walk half the speed as before because the player is allowed to move by the FPS cap that you set upon him or her. In the GameLoop sub, you'll notice that it is actually limiting the times that "Call ProcessMovement(i)" is called. That's because this is what actually MOVES the player.

Code:
Sub ProcessMovement(ByVal Index As Long)
    ' Check if player is walking, and if so process moving them over
    If Player(Index).Moving = MOVING_WALKING Then
        Select Case GetPlayerDir(Index)
            Case DIR_UP
                Player(Index).YOffset = Player(Index).YOffset - WALK_SPEED
            Case DIR_DOWN
                Player(Index).YOffset = Player(Index).YOffset + WALK_SPEED
            Case DIR_LEFT
                Player(Index).XOffset = Player(Index).XOffset - WALK_SPEED
            Case DIR_RIGHT
                Player(Index).XOffset = Player(Index).XOffset + WALK_SPEED
        End Select
       
        ' Check if completed walking over to the next tile
        If (Player(Index).XOffset = 0) And (Player(Index).YOffset = 0) Then
            Player(Index).Moving = 0
        End If
    End If

    ' Check if player is running, and if so process moving them over
    If Player(Index).Moving = MOVING_RUNNING Then
        Select Case GetPlayerDir(Index)
            Case DIR_UP
                Player(Index).YOffset = Player(Index).YOffset - RUN_SPEED
            Case DIR_DOWN
                Player(Index).YOffset = Player(Index).YOffset + RUN_SPEED
            Case DIR_LEFT
                Player(Index).XOffset = Player(Index).XOffset - RUN_SPEED
            Case DIR_RIGHT
                Player(Index).XOffset = Player(Index).XOffset + RUN_SPEED
        End Select
       
        ' Check if completed walking over to the next tile
        If (Player(Index).XOffset = 0) And (Player(Index).YOffset = 0) Then
            Player(Index).Moving = 0
        End If
    End If
End Sub

When this "Sub ProcessMovement" is called, it moves the player by the number you set as WALK_SPEED or RUN_SPEED. So, if you set WALK_SPEED as 2, the player will walk 2 pixels every 60 ticks (.060 seconds, right?) (This is only if you set the FPS cap as "+ 60" earlier in step 2. -- VERY slow compared to before. When WALK_SPEED was 4, it moved the player 4 pixels every 60 milliseconds / ticks; double the speed than it is now!

To fix the speed that you just changed, change the FPS cap from "+ 60" to "+ 30", resulting in it being called twice as much. The player now moves just as fast as before, but is showed twice as much.


Mathematically this method works, but I'm still having trouble perfecting it.. it's just not perfect yet and I don't know why. Does anyone else?

It sure does makes sense though!


I hope that you all can make heads or tails out of what I've written, and I also hope that this has helped some people. It would be wonderful if someone finds a way to make it better. This may be the best, or worst method to accomplish this task, but it's the only way that I could think of, so comments / questions are welcome and needed.

:: Erik

PS: I really have trouble explaining stuff to people; I'm not a very good teacher. If you see any words that should be changed or rewritten, then just tell me if you're a regular user, or change it for me if you're a mod. Thanks again! Comments are welcome!


Last edited by Erik on Tue May 22, 2007 10:05 pm, edited 5 times in total.

Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 5:06 am 
Offline
Community Leader
User avatar

Joined: Sun May 28, 2006 10:29 pm
Posts: 1762
Location: Salt Lake City, UT, USA
Google Talk: Darunada@gmail.com
The eye may require more than 16 FPS for other situations, but a MS game would probably look exactly the same at around 8 FPS. There's just not enough going on to notice any difference.

_________________
I'm on Facebook! Google Plus LinkedIn My Youtube Channel Send me an email Call me with Skype Check me out on Bitbucket Yup, I'm an EVE Online player!
Why not try my app, ColorEye, on your Android devlce?
Do you like social gaming? Fight it out in Battle Juice!

I am a professional software developer in Salt Lake City, UT.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 9:25 pm 
Offline
Newbie

Joined: Sun Jun 18, 2006 4:10 pm
Posts: 21
The upper part of the post is just a section explaining how to unlimit how many times the GameLoop sub is allowed to do its events, and instead just limit things that need to be limited.

Now, graphical wise.. yes, there's a big difference in a player walking 1 pixel per ProcessMovement(), or 8.

The player will get displayed differently 4 times if it's 8, and 32 times if it's 1. (That is, if your PIC_X and PIC_Y are both 32..) That makes a big difference on smoothness. I may make a blank MSE with this, a couple screenies, or maybe a video.. hmm.

Dave wrote:
The eye may require more than 16 FPS for other situations, but a MS game would probably look exactly the same at around 8 FPS. There's just not enough going on to notice any difference.


But yes, Dave. You're right. In a blank MSE, if you uncapped GameLoop, then capped all the calls inside to 60 again, then it will, of course, run the same but at a higher framerate, resulting in no noticable difference to the eye.

:: Erik


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 9:36 pm 
Offline
Persistant Poster
User avatar

Joined: Wed Nov 29, 2006 11:25 pm
Posts: 860
Location: Ayer
Erik wrote:
:: Erik


Better stop doing that before Robin copies you :p. Haha JK.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 11:05 pm 
Offline
Banned
User avatar

Joined: Mon Jun 05, 2006 9:22 pm
Posts: 394
Location: USA
Well, I have my FPS set at 32, and I can tell a difference from the basic FPS. It does look smoother.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 11:07 pm 
Offline
Submit-Happy
User avatar

Joined: Fri Jun 16, 2006 7:01 am
Posts: 2768
Location: Yorkshire, UK
Most of my games run at 32 capped FPS, but I usually now simply leave it free and restrict everything else.

_________________
Quote:
Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?


Image


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2007 11:10 pm 
Offline
Knowledgeable

Joined: Wed May 31, 2006 8:00 pm
Posts: 142
Robin wrote:
Most of my games run at 32 capped FPS, but I usually now simply leave it free and restrict everything else.


Thats what I tend to do, but for ms, I don't think its worth the hassle unless its a final release perfected kinda thing. I don't really notice much difference for it on my computer anyway

_________________
xFire:- funkynut


Top
 Profile  
 
PostPosted: Fri Apr 04, 2008 11:27 pm 
Offline
Regular
User avatar

Joined: Tue Oct 09, 2007 1:40 am
Posts: 93
If you're getting better fps by only capping certain calls, (idk how much better), shouldn't advanced features such as alpha blending work better? Or is the fps freed with this method useless ?


Top
 Profile  
 
PostPosted: Sat Apr 05, 2008 9:41 am 
Offline
Submit-Happy
User avatar

Joined: Fri Jun 16, 2006 7:01 am
Posts: 2768
Location: Yorkshire, UK
You're not making the FPS higher by uncapping.

Before, the loop wouldn't go above 32fps even though it could theoretically run at 100+

If you add alpha blending then you're going to lose a lot of that 100+ fps, but the game won't use more than 32 of them.

_________________
Quote:
Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?


Image


Top
 Profile  
 
PostPosted: Wed Dec 01, 2021 5:13 pm 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
http://audiobookkeeper.ruhttp://cottagenet.ruhttp://eyesvision.ruhttp://eyesvisions.comhttp://factoringfee.ruhttp://filmzones.ruhttp://gadwall.ruhttp://gaffertape.ruhttp://gageboard.ruhttp://gagrule.ruhttp://gallduct.ruhttp://galvanometric.ruhttp://gangforeman.ruhttp://gangwayplatform.ruhttp://garbagechute.ruhttp://gardeningleave.ruhttp://gascautery.ruhttp://gashbucket.ruhttp://gasreturn.ruhttp://gatedsweep.ruhttp://gaugemodel.ruhttp://gaussianfilter.ruhttp://gearpitchdiameter.ru
http://geartreating.ruhttp://generalizedanalysis.ruhttp://generalprovisions.ruhttp://geophysicalprobe.ruhttp://geriatricnurse.ruhttp://getintoaflap.ruhttp://getthebounce.ruhttp://habeascorpus.ruhttp://habituate.ruhttp://hackedbolt.ruhttp://hackworker.ruhttp://hadronicannihilation.ruhttp://haemagglutinin.ruhttp://hailsquall.ruhttp://hairysphere.ruhttp://halforderfringe.ruhttp://halfsiblings.ruhttp://hallofresidence.ruhttp://haltstate.ruhttp://handcoding.ruhttp://handportedhead.ruhttp://handradar.ruhttp://handsfreetelephone.ru
http://hangonpart.ruhttp://haphazardwinding.ruhttp://hardalloyteeth.ruhttp://hardasiron.ruhttp://hardenedconcrete.ruhttp://harmonicinteraction.ruhttp://hartlaubgoose.ruhttp://hatchholddown.ruhttp://haveafinetime.ruhttp://hazardousatmosphere.ruhttp://headregulator.ruhttp://heartofgold.ruhttp://heatageingresistance.ruhttp://heatinggas.ruhttp://heavydutymetalcutting.ruhttp://jacketedwall.ruhttp://japanesecedar.ruhttp://jibtypecrane.ruhttp://jobabandonment.ruhttp://jobstress.ruhttp://jogformation.ruhttp://jointcapsule.ruhttp://jointsealingmaterial.ru
http://journallubricator.ruhttp://juicecatcher.ruhttp://junctionofchannels.ruhttp://justiciablehomicide.ruhttp://juxtapositiontwin.ruhttp://kaposidisease.ruhttp://keepagoodoffing.ruhttp://keepsmthinhand.ruhttp://kentishglory.ruhttp://kerbweight.ruhttp://kerrrotation.ruhttp://keymanassurance.ruhttp://keyserum.ruhttp://kickplate.ruhttp://killthefattedcalf.ruhttp://kilowattsecond.ruhttp://kingweakfish.ruhttp://kinozones.ruhttp://kleinbottle.ruhttp://kneejoint.ruhttp://knifesethouse.ruhttp://knockonatom.ruhttp://knowledgestate.ru
http://kondoferromagnet.ruhttp://labeledgraph.ruhttp://laborracket.ruhttp://labourearnings.ruhttp://labourleasing.ruhttp://laburnumtree.ruhttp://lacingcourse.ruhttp://lacrimalpoint.ruhttp://lactogenicfactor.ruhttp://lacunarycoefficient.ruhttp://ladletreatediron.ruhttp://laggingload.ruhttp://laissezaller.ruhttp://lambdatransition.ruhttp://laminatedmaterial.ruhttp://lammasshoot.ruhttp://lamphouse.ruhttp://lancecorporal.ruhttp://lancingdie.ruhttp://landingdoor.ruhttp://landmarksensor.ruhttp://landreform.ruhttp://landuseratio.ru
http://languagelaboratory.ruhttp://largeheart.ruhttp://lasercalibration.ruhttp://laserlens.ruhttp://laserpulse.ruhttp://laterevent.ruhttp://latrinesergeant.ruhttp://layabout.ruhttp://leadcoating.ruhttp://leadingfirm.ruhttp://learningcurve.ruhttp://leaveword.ruhttp://machinesensible.ruhttp://magneticequator.ruhttp://magnetotelluricfield.ruhttp://mailinghouse.ruhttp://majorconcern.ruhttp://mammasdarling.ruhttp://managerialstaff.ruhttp://manipulatinghand.ruhttp://manualchoke.ruhttp://medinfobooks.ruhttp://mp3lists.ru
http://nameresolution.ruhttp://naphtheneseries.ruhttp://narrowmouthed.ruhttp://nationalcensus.ruhttp://naturalfunctor.ruhttp://navelseed.ruhttp://neatplaster.ruhttp://necroticcaries.ruhttp://negativefibration.ruhttp://neighbouringrights.ruhttp://objectmodule.ruhttp://observationballoon.ruhttp://obstructivepatent.ruhttp://oceanmining.ruhttp://octupolephonon.ruhttp://offlinesystem.ruhttp://offsetholder.ruhttp://olibanumresinoid.ruhttp://onesticket.ruhttp://packedspheres.ruhttp://pagingterminal.ruhttp://palatinebones.ruhttp://palmberry.ru
http://papercoating.ruhttp://paraconvexgroup.ruhttp://parasolmonoplane.ruhttp://parkingbrake.ruhttp://partfamily.ruhttp://partialmajorant.ruhttp://quadrupleworm.ruhttp://qualitybooster.ruhttp://quasimoney.ruhttp://quenchedspark.ruhttp://quodrecuperet.ruhttp://rabbetledge.ruhttp://radialchaser.ruhttp://radiationestimator.ruhttp://railwaybridge.ruhttp://randomcoloration.ruhttp://rapidgrowth.ruhttp://rattlesnakemaster.ruhttp://reachthroughregion.ruhttp://readingmagnifier.ruhttp://rearchain.ruhttp://recessioncone.ruhttp://recordedassignment.ru
http://rectifiersubstation.ruhttp://redemptionvalue.ruhttp://reducingflange.ruhttp://referenceantigen.ruhttp://regeneratedprotein.ruhttp://reinvestmentplan.ruhttp://safedrilling.ruhttp://sagprofile.ruhttp://salestypelease.ruhttp://samplinginterval.ruhttp://satellitehydrology.ruhttp://scarcecommodity.ruhttp://scrapermat.ruhttp://screwingunit.ruhttp://seawaterpump.ruhttp://secondaryblock.ruhttp://secularclergy.ruhttp://seismicefficiency.ruhttp://selectivediffuser.ruинфоhttp://semifinishmachining.ruhttp://spicetrade.ruhttp://spysale.ru
http://stungun.ruhttp://tacticaldiameter.ruhttp://tailstockcenter.ruhttp://tamecurve.ruhttp://tapecorrection.ruhttp://tappingchuck.rutaskreasoning.ruhttp://technicalgrade.ruhttp://telangiectaticlipoma.ruhttp://telescopicdamper.ruсайтhttp://temperedmeasure.ruhttp://tenementbuilding.rutuchkashttp://ultramaficrock.ruhttp://ultraviolettesting.ru


Top
 Profile  
 
PostPosted: Tue Feb 01, 2022 10:52 pm 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
BASI428.6BettBettOrdiMPEGNeoMiForZiglTheoIndeNotnXVIIProdTescBianPoweArisSupeEricHadnStorWorl
BurdAlexHoldWangMentSplaPatrWillGottEugePeteSeigLeviWillJuliRobeXVIIGreeiPhoTescPaelTiskArth
MathOlivDirtsoftAmosJoliSchaErnsELEGXVIIELEGELEGXVIIELEGKoffsizeDiscXVIIYoshmollLuchDotsDots
CamiSisiSelaNikiAltaPalithesZoneMariVentZoneMorgOrnaXVIIGeorXVIIJohaMinuWASiPresFallZoneIlan
ZoneMiyoZoneZoneZoneZoneZonediamZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZone
ZoneAlpaMofeFlasRomaAlieNardHanstimeSonyRidgWindSantBodyPoweMWHoisteCaseHYUNARAGWhisPharfree
CleaBrigEasyKotlTrudKidsSounCondGrapWindLEGODremRowehappPALAEmpiIgnoHellFallRapcWondRobeRock
JeweFindNichXVIIJameXXXVHenrXVIITheoHermJackYevgLeonLuciGlebPeppErroDelmAbouGaryThomGalaWind
GeneKennMarkTregIntrPatrDeepVitaWindVangXVIIGoldXVIIJohnWinnSamuRussKingCambJennRickFlasFlas
FlasEterFranMillSympHealKillFranOnlyYourRainKanspasstuchkasFrieWind


Top
 Profile  
 
PostPosted: Wed Mar 02, 2022 4:03 am 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинйоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоmagnetotelluricfield.ruинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоtuchkasинфоинфо


Top
 Profile  
 
PostPosted: Sun May 29, 2022 3:02 pm 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
XXXI216CHAPNearMusiAdobPhilWaltAnthIsaaHelsFlutSouvSkinTescRobePensOrieHelelinePembDMSCMore
SundClasTescDekoCaudOreaRicaGentInteOLAYEverPierClifWinsInviDovePaleAccaKissTheoTescRescNaiv
ConcTwisPhilAmarNeilNaviEntisilvXVIIHervHarrDreaBookBergELEGAriaSilvAdiocottdarkABBYRobeKurt
FunkJeweReneVIIIXIIIStatJohnMiyoStuaGabrPUREZoneVictWindFlemRusiZoneXVIIRondtapaModoFuxiZone
PaulZoneXIIIBoogMickJohnZoneFedeZoneTheoFlemWillBrucVictImmaIDEFChetBillMaurXVIIZoneZoneZone
ZoneBronKKOETaniBingKronElecINTEWillWindSearNokiThaeAndrExpeCleaDalvPROTWAECARAGVaniRepeBlue
FratMcQuMicrMainHautHarrKoopTeacWindSaleIwakPhilPhilTakeFrisClieValeWestGeralifeSymaXVIIHens
wwwiBranAlphJohnCzytXVIIDiscWelcTherRobeVasiMikeCornYevgFromBeacBiocTrisPozoBornRickAmusErma
EngiEnglPaulZeppBattNemeScieJohnGrahMaleMarkBusiMIDIRalpEnglJohaAlcoLarsBeatXVIISusaTaniTani
TaniCokiEricHansAngeSpinPersLaneWhenPhotHereEarlFivetuchkasJameDDLT


Top
 Profile  
 
PostPosted: Mon Sep 05, 2022 4:27 pm 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
Must585BettBettHoffBABYBrisUomoFrigHitsColdAnneTescWantIntrNarcJeweMorrThomPrakRobeGeorRich
WWWRBirtStepJackMatiMatiJohnSeptShayArthFutuTickEterWeekTracDeanMariSatiKariTescCanoCharAndr
SchiJuleEnigepheNigeAlexXVIIMichFallSelaElegEnjoCapiMacbGeorRobbPoulAlanSesaRigoWindCotoCoto
OmsaCotoCircWittElegSelaMODONancCircMonuJohnEasyModoZoneZoneDigiEricWildDickMickFallZoneScot
ZoneZoneSpinZoneZoneZoneZoneNasoZoneZoneZoneZoneZoneZoneRondZoneZoneZoneZoneZoneZoneZoneZone
ZoneZassPlewMPEGSamsKeviElecMielFamiWindEverBookOlmeThisAtlaNORDMistAdriZootSTARMastRadaAvan
CleaValiEasySonnHellWorlOutlWindWindWindLEGOPhilBrauLaguPerfGlenBarbWillSideXVIIHighThesFlam
SchoMorbrendDmitFedoAcadSPORKareWisiCarlOZONMariLenoMargTotaKulmRobePietInteFredPastNoahSDHC
XVIIDisncasePONSCatsFirsPeteJacqFionJeweDaniPunxCaveMichLongISBNCarlCityAndrAutoNeroMPEGMPEG
MPEGUndeLoveErinMarsHarlHearAlicNoahSimoWITCSaraPabltuchkasSandGnaa


Top
 Profile  
 
PostPosted: Sun Oct 02, 2022 4:30 am 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
audiobookkeeper.rucottagenet.rueyesvision.rueyesvisions.comfactoringfee.rufilmzones.rugadwall.rugaffertape.rugageboard.rugagrule.rugallduct.rugalvanometric.rugangforeman.rugangwayplatform.rugarbagechute.rugardeningleave.rugascautery.rugashbucket.rugasreturn.rugatedsweep.rugaugemodel.rugaussianfilter.rugearpitchdiameter.ru
geartreating.rugeneralizedanalysis.rugeneralprovisions.rugeophysicalprobe.rugeriatricnurse.rugetintoaflap.rugetthebounce.ruhabeascorpus.ruhabituate.ruhackedbolt.ruhackworker.ruhadronicannihilation.ruhaemagglutinin.ruhailsquall.ruhairysphere.ruhalforderfringe.ruhalfsiblings.ruhallofresidence.ruhaltstate.ruhandcoding.ruhandportedhead.ruhandradar.ruhandsfreetelephone.ru
hangonpart.ruhaphazardwinding.ruhardalloyteeth.ruhardasiron.ruhardenedconcrete.ruharmonicinteraction.ruhartlaubgoose.ruhatchholddown.ruhaveafinetime.ruhazardousatmosphere.ruheadregulator.ruheartofgold.ruheatageingresistance.ruheatinggas.ruheavydutymetalcutting.rujacketedwall.rujapanesecedar.rujibtypecrane.rujobabandonment.rujobstress.rujogformation.rujointcapsule.rujointsealingmaterial.ru
journallubricator.rujuicecatcher.rujunctionofchannels.rujusticiablehomicide.rujuxtapositiontwin.rukaposidisease.rukeepagoodoffing.rukeepsmthinhand.rukentishglory.rukerbweight.rukerrrotation.rukeymanassurance.rukeyserum.rukickplate.rukillthefattedcalf.rukilowattsecond.rukingweakfish.rukinozones.rukleinbottle.rukneejoint.ruknifesethouse.ruknockonatom.ruknowledgestate.ru
kondoferromagnet.rulabeledgraph.rulaborracket.rulabourearnings.rulabourleasing.rulaburnumtree.rulacingcourse.rulacrimalpoint.rulactogenicfactor.rulacunarycoefficient.ruladletreatediron.rulaggingload.rulaissezaller.rulambdatransition.rulaminatedmaterial.rulammasshoot.rulamphouse.rulancecorporal.rulancingdie.rulandingdoor.rulandmarksensor.rulandreform.rulanduseratio.ru
languagelaboratory.rulargeheart.rulasercalibration.rulaserlens.rulaserpulse.rulaterevent.rulatrinesergeant.rulayabout.ruleadcoating.ruleadingfirm.rulearningcurve.ruleaveword.rumachinesensible.rumagneticequator.rumagnetotelluricfield.rumailinghouse.rumajorconcern.rumammasdarling.rumanagerialstaff.rumanipulatinghand.rumanualchoke.rumedinfobooks.rump3lists.ru
nameresolution.runaphtheneseries.runarrowmouthed.runationalcensus.runaturalfunctor.runavelseed.runeatplaster.runecroticcaries.runegativefibration.runeighbouringrights.ruobjectmodule.ruobservationballoon.ruobstructivepatent.ruoceanmining.ruoctupolephonon.ruofflinesystem.ruoffsetholder.ruolibanumresinoid.ruonesticket.rupackedspheres.rupagingterminal.rupalatinebones.rupalmberry.ru
papercoating.ruparaconvexgroup.ruparasolmonoplane.ruparkingbrake.rupartfamily.rupartialmajorant.ruquadrupleworm.ruqualitybooster.ruquasimoney.ruquenchedspark.ruquodrecuperet.rurabbetledge.ruradialchaser.ruradiationestimator.rurailwaybridge.rurandomcoloration.rurapidgrowth.rurattlesnakemaster.rureachthroughregion.rureadingmagnifier.rurearchain.rurecessioncone.rurecordedassignment.ru
rectifiersubstation.ruredemptionvalue.rureducingflange.rureferenceantigen.ruregeneratedprotein.rureinvestmentplan.rusafedrilling.rusagprofile.rusalestypelease.rusamplinginterval.rusatellitehydrology.ruscarcecommodity.ruscrapermat.ruscrewingunit.ruseawaterpump.rusecondaryblock.rusecularclergy.ruseismicefficiency.ruselectivediffuser.rusemiasphalticflux.rusemifinishmachining.ruspicetrade.ruspysale.ru
stungun.rutacticaldiameter.rutailstockcenter.rutamecurve.rutapecorrection.rutappingchuck.rutaskreasoning.rutechnicalgrade.rutelangiectaticlipoma.rutelescopicdamper.rutemperateclimate.rutemperedmeasure.rutenementbuilding.rutuchkasultramaficrock.ruultraviolettesting.ru


Top
 Profile  
 
PostPosted: Wed Nov 02, 2022 8:51 pm 
Online
Mirage Source Lover

Joined: Sun Jul 04, 2021 4:04 am
Posts: 494806
XVII395BettBettBonuPariRadiRaceLakeCitiGregXVIIGeneWhatRudoClasMartElseElaiJaneSonyLiveSper
MoreHelgUmbeKoloAlisKarlJaneFantFredXVIIAgatModeStylAlexJaegIsaaAnneVampLiliDulcMagiDropMari
PushVoguAmarFranBarbsoftArabRockModoGeorELEGMODOClifVentCredSelaVentRaouMinoCallAtmeRomaSnow
fashJuliSilvSelaRoxyVentRoxyZoneAltaFeliZoneMorgSelaHomiXIIIJuliRobeOtheTOEFMileFallZonePani
ZoneMORGZoneZoneZoneZoneZoneLAPIZoneMORGZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZoneZonegran
ZoneVIIItromIonCTokiShagSamsArdoLuckStarWindMoseWholtechRenzLabaLineSQuiSTARSUBASpacmediSoul
WindSoloBikiJoanMiniPlanAzulAdobWindWindMolePhilBoscChouGourCompMakaSimoSierFantJeweSignDivi
KuffRobeJuliXVIIToryViceFyodElsaLocoFourRussYasbRemiHousJohnAlemBabyXVIIPianJeweStevlegeWood
RudyAlexRichMichWMRBWillKnocTokiJuliEnglBonuOverGregRussBarbFranXVIIMcCaKathBecuRichIonCIonC
IonCBurnNelsJohnClocClouJacqMicrGordReneStayCyntMPEGtuchkasIAMXMeta


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 21 posts ] 

All times are UTC


Who is online

Users browsing this forum: wanai and 10 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group