1 पॉइंट द्वारा GN⁺ 4 시간 전 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • यह ब्राउज़र में Quake चलाने वाला CSSQuake डेमो है, और पेज पर cssQuake v0.230 initialization के साथ coming soon! स्थिति भी दिखाई देती है
  • rendering की ज़िम्मेदारी PolyCSS renderer v0.2.6 संभालता है, और manifest, progs, definitions, weapon model, id1/pak0.pak assets के load log देखे जा सकते हैं
  • शामिल गेम Quake Shareware version 1.06 है, और Quake (C) 1996 id Software, Inc. copyright notice दिखाई देता है
  • multiplayer स्क्रीन name, color, map, fraglimit, timelimit, maximum player settings और Create, Join, Copy Link actions प्रदान करती है
  • control guide और debug toggles भी दिखाए गए हैं, इसलिए मौजूदा पेज execution demo और settings UI दोनों को साथ में दिखाता है

ब्राउज़र में initialize होने वाला Quake डेमो

  • पेज का title cssQuake - Powered by PolyCSS है, और मुख्य भाग में v0.230 तथा coming soon! दिखाई देता है
  • नीचे के log में === cssQuake v0.230 initialized === दिखाई देता है
  • load status इस क्रम में दिखता है
    • Host_Init
    • Loaded manifest
    • Loaded progs
    • Loaded definitions
    • Weapon model
    • Assets from id1/pak0.pak
  • performance display area में 0 FPS और 0 MS दिखाई देते हैं
  • संबंधित लिंक हैं cssQuake GitHub, id Software Quake GitHub, Layoutit

multiplayer और controls settings

  • Multiplayer मेनू में name, color, map, fraglimit, timelimit, और maximum players की संख्या सेट की जा सकती है
    • default map display E1M1 the Slipgate Complex है
    • action buttons हैं Create, Join, Copy Link
  • map list में ये items दिखाई देते हैं
    • E1M1 the Slipgate Complex
    • E1M2 Castle of the Damned
    • E1M3 the Necropolis
    • E1M4 the Grisly Grotto
    • E1M5 Gloom Keep
    • E1M6 The Door To Chthon
    • E1M7 The House of Chthon
    • E1M8 Ziggurat Vertigo
  • controls guide Gameplay और Menu में बंटी हुई है
    • Gameplay: WASD movement, Mouse view, Click fire, Space jump, Shift run, Ctrl crouch
    • Menu: arrow keys navigation, Enter select, Esc back
  • Debug और Gameplay settings में ये toggles दिखाई देते हैं
    • Show outlines, Show stats panel, Show FPS panel
    • Crosshair adjustment
    • Dynamic lighting, Mute sounds, Show particles, Show enemies
    • Disable damage, Disable movement, Disable attacks, Invert mouse

1 टिप्पणियां

 
GN⁺ 4 시간 전
Hacker News की टिप्पणियाँ
  • बड़ी उपलब्धि है, लेकिन यह सोचकर थोड़ा अजीब लगता है कि 90s का Pentium-133 PC जिस Quake को चलाता था, वह शायद मेरे Mac M1 Pro पर इससे ज़्यादा स्मूद चलता था

    • यह इंजन performance optimized नहीं है। आखिरकार यह CSS का इस्तेमाल कर रहा है
    • संदर्भ के लिए, M2 पर Chrome में यह मक्खन जैसा स्मूद चलता है, लेकिन Safari में अटकता है और काफ़ी कट-फट जाता है
    • Firefox + Linux पर बिल्कुल कोई दिक्कत नहीं है। लेकिन Gnome Web में यह रुक-रुक कर और अजीब चलता है। लगता है WebKit/Safari की तरफ़ की समस्या है
    • अगर यह C में compiled Quake होता, तो M1 पर 8K full resolution में भी बेहद तेज़ चलता
    • रुकिए, क्या Quake Pentium-133 पर चलता था? मैं Pentium MMX 233MHz इस्तेमाल करता था, और मुझे लगा था यह ठीक से नहीं चलेगा, इसलिए इसे लेने के बारे में सोचा भी नहीं
  • कमाल है। vim से निकलने से भी मुश्किल

    • अगर मेन्यू देखना है तो Tab दबाएँ। गेम में वापस जाने के लिए मेन्यू आइटम्स के बाहर क्लिक करें
    • आप बाहर कैसे निकले? कुछ भी काम करता हुआ नहीं लग रहा
  • प्रभावशाली। क्या यह सिर्फ़ CSS इस्तेमाल करने वाला renderer ही नहीं, बल्कि पूरा engine और game logic भी reimplement किया गया है? कुछ चीज़ें ओरिजिनल से अलग तरह से काम करती दिखती हैं, इसलिए ऐसा लग रहा है
    उदाहरण के लिए, कुछ बटन छूने के बजाय गोली मारने पर काम करते हैं, और कुछ secret doors गोली मारने के बजाय छूने पर खुलते हैं

    • नमस्ते! रिपोर्ट के लिए धन्यवाद, और अब बटन सही तरह से काम करने चाहिए
      game logic की तरफ़, build step पर QuakeC/progs.dat के ऊपर एक छोटा JS extractor चलाया जाता है, जो state, model, attack, sound जैसी source जानकारी से JSON बनाता है। browser runtime TypeScript में है, और उसी जानकारी का उपयोग करके Quake-जैसा gameplay implement किया गया है
    • नहीं, सिर्फ़ renderer ऐसा है। गेम खुद TypeScript में है
  • लंबे समय बाद इंटरनेट पर यह पहली चीज़ है जिसने मुझे सच में हँसाया
    https://cssdoom.wtf/ भी देखा, वह भी बढ़िया था। आजकल की सामयिक ख़बरों से तो ये दोनों कहीं ज़्यादा हल्के-फुल्के और अच्छे हैं \o/

  • लगता है इस CSS Quake को चलाने के लिए JS चाहिए

    • https://lyra.horse/x86css/ से शायद हो सके?
    • CSS rendering करता है, और game logic TypeScript में है
  • CSS यानी hack पर hack चढ़ी हुई चीज़ के फैलाव, और CSS/JS/HTML वाले web stack से मेरी गहरी चिढ़ के बावजूद, मुझे यह CSS का शानदार और जायज़ use case लगता है :)

  • क्या यह https://github.com/NielsLeenheer/cssDOOM से लिया गया है?

  • बहुत बढ़िया। इसकी सीमा कहाँ तक है, यह जानने की जिज्ञासा है। मुझे दिखा कि मारा गया कुत्ता हवा में तैर रहा है — क्या यह CSS की वजह से है, या इसे ठीक किया जा सकता है?

    • .dog { display: float; }
  • प्रभावशाली है, लेकिन ऐसा लगता है कि ऐसी चीज़ें declarative style language से संभव नहीं होनी चाहिए

    • game logic नहीं, सिर्फ़ rendering के लिए CSS इस्तेमाल हो रहा है
  • वाह, सच में कमाल है। बहुत ही स्मूद चल रहा है। यह बात हैरान कर देती है कि करीब 25 साल बाद भी muscle memory वैसी की वैसी बनी हुई है