Marc ecko getting up contents under pressure cover sigma federation game sigma sigmaco marc eckos getting up, asi plugin, bink video, file format, miles sound system (mss), technologia, xml sigma federation isto é um sumário superficial de informações técnicas realizado pela sigma/scitech sobre o game marc ecko's getting up - contents under pressure, que, apesar do tamanho do nome já desmotivar, posso dizer que é um game com uma proposta interessante. Aliás, o nome deste projeto, no tempo de seu desenvolvimento, era simplesmente "getting up". Sim, parece que o autor inventou de colocar as miçangas no nome enquanto estava atoa.

Inside the Marc Ecko’s Getting Up – Contents Under Pressure

Isto é um sumário superficial de informações técnicas realizado pela SIGMA/Scitech sobre o game Marc Ecko’s Getting Up – Contents Under Pressure, que, apesar do tamanho do nome já desmotivar, posso dizer que é um game com uma proposta interessante. Aliás, o nome deste projeto, no tempo de seu desenvolvimento, era simplesmente “Getting Up”. Sim, parece que o autor inventou de colocar as miçangas no nome enquanto estava atoa.

No entando, o game parece ser um módulo carregado pela engenharia central de software, aparentemente denominada “Slayer”. Este módulo é denominado “Rhapsody” em todo o código. Esta abordagem de engenharia de gameware é comumente observado em games da década de 1990 e início de 2000.

Middlewares usados

Bink Video 1.5.19.0 (1.5s)

Miles Sound System 6.6.7.0 (6.6g)

Ferramentas usadas

Pro Tools, usada para produção de arquivos Waveform.

XML Spy (4.2), usado para a produção de arquivos XML e derivados, os quais são pesadamente usados neste game.

Formatos de arquivo

Slayer Texture (.st)

Arquivos sob a extensão .st são blobs que aparentam representar algum tipo de formato de imagem ou textura. Também contêm um FOURCC ‘ST‘ inaugurando os dados.

Geometry Info (.gin)

Arquivos sob a extensão .gin são documentos XML expressando informação de ligadura de <malha, mesh>.

<MeshBoundInfo><Sphere Name="bound_S01" radius="8.367447"><vector3 id="Offset" x="-9.708336" y="-3.808555" z="0.000000"/></Sphere></MeshBoundInfo>

Geometry Attachment (.gat)

Arquivos sob a extensão .gat são documentos XML expressando informação de anexamento de <malha, mesh>.

<MeshAttachmentInfo><Attachment name="ATT-FX01" boneName="root"><vector3 id="Translation" x="0.000000" y="12.475458" z="0.000000"/><quat id="Rotation" x="0.000000" y="-0.707107" z="0.000000" w="0.707107"/></Attachment></MeshAttachmentInfo>

Mesh (.msh)

Arquivos sob a extensão .msh são blobs que aparentam representar, para a surpresa de exatamente zero pessoas, uma <malha, mesh>.

Configuration (.cfg)

Arquivos sob a extensão .cfg são documentos de texto que representam linhas de configuração enfileiradas.

Mesh Capsule Info (.cap)

Arquivos sob a extensão .cap são documentos XML expressando informação sobre a cápsula de uma <malha/mesh>. Como foi encontrada apenas no diretório dos atores, e considerando a parecença das informações (onde, neste game, há humanos e cães também), provavelmente trata-se de informações para física e/ou detecção de colisão.

<MeshCapsuleInfo xmlns="http://www.collectivestudios.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<Capsule name="DHead" boneName="Head" radius="20.00">
		<vector3 id="EndPoint1" x="0.0" y="0.0" z="0.0"/>
		<vector3 id="EndPoint2" x="0.0" y="0.0" z="0.0"/>
	</Capsule>
	<Capsule name="DButt" boneName="Spine" radius="20.00">
		<vector3 id="EndPoint1" x="0.0" y="0.0" z="-5.0"/>
		<vector3 id="EndPoint2" x="-20.0" y="0.0" z="-5.0"/>
	</Capsule>
</MeshCapsuleInfo>
<!--def_collision(DHead, collzone_mid)
def_collision(DButt, collzone_mid)-->

Footstep Rules (.fts)

Apenas um arquivo sob a extensão .fts se encontra na distro do game. Trata-se de um documento XML que compreende exatamente regras para a interação de pegadas com materiais, sendo explicitamente responsável por determinar o som do ruído produzido pela interação.

<!--Directions:  When the game is trying to find the sound fx attached to a material it first tries to find the Rules attached to that material.  Once it finds the material it then tries to find the Type of footstep in that Rule.  If the Type does not exist it uses the default sound fx.  This means that the each material should only be listed once in this entire file.  If it is listed multiple times the first RuleSet will always be picked.-->
<FootstepRules xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.collectivestudios.com" xsi:schemaLocation="http://www.collectivestudios.com
..\..\..\..\CommonAssets\Schemas\FootstepSystem.xsd">
	<RuleSet>
		<Rule Sound="sfx\footstep_walk_cement_" Type="Walk"/>
		<Rule Sound="sfx\footstep_run_cement_" Type="Run" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\footstep_jump_cement_" Type="Jump" FX="IDS_FX_STOMPLANDING"/>
		<Rule Sound="sfx\hand_slide_cement_" Type="Scuff" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\footstep_slide_cement_" Type="Slide" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\footstep_run_cement_" Type="Stairs" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\body_fall_cement_" Type="BodyFall" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\hand_grab_cement_" Type="HandGrab" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\body_impact_cement_" Type="WallSplat" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\ledge_grab" Type="LedgeGrab" FX="IDS_FX_FOOTSTOMP"/>
		<Rule Sound="sfx\clothing_scrape_cement_" Type="ClothScrape" FX="IDS_FX_FOOTSTOMP"/>
		<Material Name="Default"/>
		<Material Name="Brick"/>
		<Material Name="Concrete"/>
		<Material Name="Ether"/>
		<Material Name="Flesh"/>
		<Material Name="Gravel"/>
		<Material Name="Ice"/>
		<Material Name="Rock"/>
		<Material Name="OfficeSpace"/>
		<Material Name="WaxedFloor"/>
	</RuleSet>

        [...]
</FootstepRules>

Extensible Markup Language (.xml)

Documentos XML são encontrados em natura também expressando informação de carregamento de ator e árvore de evento de animação. Criados pelo XML Spy, provavelmente.

<CharacterLoadInfo xmlns="http://www.collectivestudios.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<CapsuleFile>meshes\chars\dog.cap</CapsuleFile>
	<EventFile>meshes\chars\common\s_dog.xml</EventFile>
	<FootstepRuleFile>meshes\chars\common\common.fts</FootstepRuleFile>
</CharacterLoadInfo>
<AnimEventTree xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.collectivestudios.com" xsi:schemaLocation="http://www.collectivestudios.com
..\..\..\..\CommonAssets\Schemas\CharacterSequenceEvents.xsd">
	<!--***LOAD SOUND EVENTS***-->
	<!--***LOAD SOUND EVENTS***-->
	<!--***LOAD SOUND EVENTS***-->
	<CharEvent_LoadSound File="sfx\dog_bark_*" RefID="dog_bark"/>
	<CharEvent_LoadSound File="sfx\dog_growl_*" RefID="dog_growl"/>
	<CharEvent_LoadSound File="sfx\hit_mid_b_*" RefID="dog_hit"/>
	<CharEvent_LoadSound File="dog_snarl_*" RefID="dog_cry"/>
	<CharEvent_LoadSound File="dog_snarl_*" RefID="dog_snarl"/>
	<!--***LOAD FX EVENTS***-->
	<!--***LOAD FX EVENTS***-->
	<!--***LOAD FX EVENTS***-->
	<CharEvent_LoadFX ID="IDS_FX_BLOODDRIP" RefID="BloodDripHead">
		<vector3 x="0.0" y="150.0" z="0.0"/>
	</CharEvent_LoadFX>
	<!--GRAPPLES/ ATTACKS-->
	<CharEvent_Sequence Name="Alarm_IdleBark">
		<CharEvent_PlaySound RefID="dog_bark" Frame="1" Volume="100" Range="10000"/>
		<CharEvent_PlaySound RefID="dog_bark" Frame="46" Volume="100" Range="10000"/>
	</CharEvent_Sequence>
	[...]
</AnimEventTree>

Comma-separated Value (.csv)

Arquivos CSV também são encontrados em natura, expressando dados sobre colisão, contato e dano das ações dos atores.

Bink Video (.bik)

Estão presentes também arquivos Bink de FMV, que não necessitam de ressalvas.

Music (.mus)

Um arquivo sob a extensão .mus, que é um blob desconhecido.

Pack (.pak)

Um arquivo desconhecido.

Waveform (.wav)

Criados pelo Pro Tools, provavelmente. Dispensa comentário.

Applicable Service Interface (.asi)

Como era de se esperar, módulos do Miles Sound System estão presentes também sob as extensões .asi, .flt e .m3d.

Slayer Game Library (.sgl)

Aparentemente, o design de software deste gameware sugere que o “game” é carregado pelo executor da game engine como um módulo, que se trata estritamente de uma DLL sob a extensão .sgl.

Requisite por clarificação e/ou mais informações e recursos a respeito do conteúdo tratado aqui. <[email protected]>

Responses

Auto-translate »