:
This presentation is the property of its rightful owner.
Sponsored Links
1 / 26

Тема: Ресурсная система для MMO Докладчик: Сидоренко Дмитрий PowerPoint PPT Presentation


  • 127 Views
  • Uploaded on
  • Presentation posted in: General

Тема: Ресурсная система для MMO Докладчик: Сидоренко Дмитрий. О чем пойдет речь. Компоненты проекта MMO. Требования, предъявляемые к ресурсной системе Ресурсная система в многоязыковой среде Методы борьбы с некорректными данными Ресурсная система на основе XML Жизненный цикл базы данных

Download Presentation

Тема: Ресурсная система для MMO Докладчик: Сидоренко Дмитрий

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Mmo

: MMO:


Mmo

  • MMO. ,

  • XML


Mmo

( , model viewer, , )

MMO


Mmo

    • in-place


Mmo


Mmo

  • Human readable ,


Mmo

  • ++

    • native

  • Java

    • ( , garbage collection, reflection)

    • Linux

    • (Intellij IDEA)

  • C#

    • ()

    • GUI

    • (delegates, events, properties)


Mmo

java. , .

java :

  • reflection runtime type information

  • (Intellij IDEA)


Mmo


Mmo

  • (, , ..)


Mmo

. 3- .

public class AstralShip extends Resource {

@FloatMinMaxConstraint(minValue=10.0f, maxValue=1000000.0f)

private float tonnage;

@IntMinMaxConstraint(minValue=5, maxValue=30)

private int crewCount;

@ArrayIndexConstraint(maxIndex=25)

private AstralTurret [] turrets;

}


Nullpointerexception

NullPointerException

public class AstralShip extends Resource{

@NotNull

@NotNullElements(policy=NotNullElements.RemovePolicy.REMOVE)

private AstralMissile [] missiles;

public static class AstralMissile {

public void launch() {

}

}

}

public class MissileLauncher {

public void launch(@NotNull AstralShip.AstralMissile [] missiles){

for (AstralShip.AstralMissile missile:missiles){

missile.launch();

}

}

}


Default or not default

Default or not default

. . .

public class Mob {

@AllowDefault

private float thickness= 1.0f;

@NotNull

private String name;

@NotNull

private VisualModel model;

}


Mmo

, , .


Mmo

XML

  • XML

    • XML parsers

    • Human readable. xml


Inlining xml

Inlining - XML

  • ,


Inlining xml1

Inlining - XML

:

<Port>

<ships>

< Item href=AstralShip.xdb#xpointer(AstralShip) />

< Item href=LittleBoat.xdb#xpointer(Boat) />

< Item href=AstralSubmarine.xdb#xpointer(AstralSubmarine) />

</ships>

</Port>

, :

<Port>

<ships>

< Item type=AstralShip >

<tonnage>100000</tonnage>

<noOfGuns>10<noOfGuns>

</Item>

< Item type=Boat >

<noOfPlaces>5</noOfPlaces>

</Item>

< Item type=AstralSubmarine>

<ammoType>AstralMissile</ammoType>

<ammoCount>10</ammoCount>

</Item>

</ships>

</Port>


Mmo

AstralMissile1.xml

<AstralMissile>

<distance> 1000</distance>

<detonation>10</ detonation>

<precision> 0.1</ precision >

<fuel>1000</fuel>

<noOfParts>3</noOfParts>

</ AstralMissile >

AstralMissile2.xml

<AstralMissile>

<distance> 1000</distance>

<detonation> 15</ detonation>

<precision> 0.1</ precision >

<fuel>1000</fuel>

<noOfParts>3</noOfParts>

</ AstralMissile >

AstralMissile3.xml

<AstralMissile>

<distance> 1000</distance>

<detonation> 20</ detonation>

<precision> 0.1</ precision >

<fuel>1000</fuel>

<noOfParts>3</noOfParts>

</ AstralMissile>

AstralMissile4.xml

<AstralMissile>

<distance> 1000</distance>

<detonation> 10</ detonation>

<precision> 0.05</ precision >

<fuel>1000</fuel>

<noOfParts>3</noOfParts>

</ AstralMissile>


Mmo

AstralMissilePrototype.xml

<AstralMissile>

<Vars>

<distanceVar> 1000</distanceVar>

<detonationVar>10</detonationVar>

<precisionVar> 0.1</ precisionVar>

<fuelVar>1000</fuelVar> <noOfPartsVar>3</noOfPartsVar>

</Vars>

<distance var=distanceVar />

<detonation var=detonationVar />

<precision var=precisionVar />

<fuelVar var=fuelVar />

<noOfParts var=noOfPartsVar />

</ AstralMissile>

AstralMissile1.xml

<AstralMissile>

<include href=AstralMissilePrototype.xml/>

</AstralMissile>

AstralMissile2.xml

<AstralMissile>

<include href=AstralMissilePrototype.xml/>

<Vars>

<detonationVar>15</detonation>

</Vars>

</ AstralMissile>

AstralMissile3.xml

<AstralMissile>

<include href=AstralMissilePrototype.xml/>

<Vars>

<detonationVar>15</detonation>

</Vars>

</ AstralMissile>

AstralMissile4.xml

<AstralMissile>

<include href=AstralMissilePrototype.xml/>

<Vars>

<precisionVar>0.01</precisionVar>

</Vars>

</AstralMissile>


Mmo

<?xml version="1.0" encoding="UTF-8" ?>

<gameMechanics.constructor.schemes.spell.area.SpellArea>

<Header>

<Prototype href="Spell.xdb#xpointer(/gameMechanics.constructor.schemes.spell.area.SpellArea)" />

<Variables>

<level>4</level>

<mana>70</mana>

<damage>35</damage>

<name>Spell01Name.txt</name>

<learnLevel>4</learnLevel>

<minDamage>35</minDamage>

<maxDamage>35</maxDamage>

</Variables>

</Header>

<Name href="Spell01_Name.txt" />

<Description href="Spell01_Desc.txt" />

</gameMechanics.constructor.schemes.spell.area.SpellArea>


Mmo


Mmo


Mmo


Mmo

:

  • :


Generics

Generics


Mmo

?

[email protected]


  • Login