VVVVVV का source code सार्वजनिक हुआ
(github.com/TerryCavanagh)- 2010 के indie game VVVVVV का source code सार्वजनिक कर दिया गया है; game Terry Cavanagh ने बनाया था और music Magnus Pålsson ने दिया था
- desktop version का source code repository के desktop_version folder में है
- VVVVVV अब भी commercially sold है, लेकिन personal use के लिए builds को स्वतंत्र रूप से compile किया जा सकता है
- compiled version को distribute करने के लिए repository की LICENSE.md देखनी होगी
- VVVVVV updates से जुड़ी चर्चा मुख्य रूप से unofficial VVVVVV Discord के
vvvvvv-codechannel में होती है
सार्वजनिक किया गया source code
- यह repository Terry Cavanagh के 2010 indie game VVVVVV का source code रखती है
- source code सार्वजनिक करने की घोषणा Terry के blog notice में देखी जा सकती है: announcement
- desktop version का source code desktop_version folder में है
उपयोग और distribution की शर्तें
- VVVVVV अब भी thelettervsixtim.es पर commercially purchased किया जा सकता है
- personal use के लिए game को खुद compile किया जा सकता है
- compiled game version distribute करने के लिए LICENSE.md देखनी होगी
updates पर चर्चा का channel
- VVVVVV updates पर चर्चा मुख्य रूप से unofficial VVVVVV discord पर होती है
- संबंधित channel
vvvvvv-codeहै
1 टिप्पणियां
Hacker News की रायें
हाई स्कूल के आखिर में जब मैं परिवार के साथ London गया था, तो गेम डेवलपर बनना चाहता था, इसलिए Terry Cavanagh को ईमेल किया। हैरानी की बात है कि उन्होंने खुशी-खुशी लंच पर मिलने के लिए हां कर दी
वे सच में बहुत अच्छे थे और उन्होंने जीवन से जुड़ी कई सलाहें भी दीं। मुझे याद है कि उन्होंने कहा था कि ज्यादातर आइडिया किसी भव्य विज़न से नहीं आते, बल्कि game mechanics से छेड़छाड़ करते हुए experiment करने से मिलते हैं। खैर, वे शानदार इंसान हैं, और खुशी है कि उन्होंने VVVVVV, जिसे वे V कहते थे, open source कर दिया
कुछ सचमुच खराब लोगों से मिलना पड़ता है, तभी आप सच में अच्छे लोगों को सही से पहचान पाते हैं
सच में बहुत मजेदार गेम। मैं बहुत ज्यादा गेम खेलने वालों में नहीं हूं, लेकिन याद है कि इसे पाने के लिए मैंने Humble Bundle खरीदा था
यह उन गिने-चुने games में से एक था जिसे मैंने आखिर तक खेला। Terry, शानदार काम और अच्छे समय के लिए धन्यवाद। साथ ही, veni vidi vici सच में गाली निकलवा देने जितना मुश्किल था और इसमें काफी समय लगा
https://www.youtube.com/watch?v=4CtiY5D6HCs
उस समय मेरा boyfriend वही था जिसने मुझे VVVVVV खरीदकर दिया था, और वह no-death all-trinket run करने की कोशिश कर रहा था। समझ नहीं आता था कि कोई game में इतना अच्छा कैसे हो सकता है। और VVVVVV soundtrack PPPPPP अब भी अक्सर सुनता/सुनती हूं। खासकर उससे जुड़े osu! stream tracks अच्छे लगते हैं
ये related posts हैं। सोच रहा/रही हूं और भी कुछ होगा क्या
Is opening up your source code worth it? Terry Cavanagh thinks it was for VVVVVV - https://news.ycombinator.com/item?id=25727963 - जनवरी 2021
Many games are held together by duct tape - https://news.ycombinator.com/item?id=22043156 - जनवरी 2020
VVVVVV Source Code Released - https://news.ycombinator.com/item?id=22011465 - जनवरी 2020
VVVVVV’s source code is now public, 10 year anniversary jam happening now - https://news.ycombinator.com/item?id=22011358 - जनवरी 2020
VVVVVV 60% Off On The Mac App Store This Weekend - https://news.ycombinator.com/item?id=2347676 - मार्च 2011
Graphics::print_level_creator(...)की comment में लिखा है कि “by {author}” की जगह चेहरा दिखाया जाता हैवजहें थीं कि “by” author की भाषा से अलग होने पर अटपटा लग सकता है, दूसरी भाषाओं में यह लंबा होकर मौजूदा level limit तोड़ सकता है, “by” और author name के लिए आपस में मेल न खाने वाले fonts की जरूरत पड़ सकती है, gender/name inflection जैसी grammar problems से भी बचा जा सकता है, चेहरे से दिखाना समझ में आता है, और इस फैसले से अगर कोई दुखी भी हो तो smiley face वैसे भी उसका mood ठीक कर देगा। इसका विरोध करना मुश्किल है
लेख में link किए गए https://distractionware.com/blog/2020/01/vvvvvv-is-now-open-... में कहा गया था कि C++ version की कई अजीब चीजें तभी समझ आती हैं जब याद हो कि इसे पहले Flash में बनाया गया था और फिर खामियों समेत सीधे port किया गया था
उदाहरण के लिए,
i,j,kजैसे temporary variables को functions के अंदर declare न करना पड़े, इसलिए उन्हें हर class के members के रूप में declare करने की आदत थी; कहा गया कि Flash में कुछ उबाऊ वजहों से functions के अंदर declaration करना झंझट भरा था। नतीजतन ऐसे bugs बने जिन्हें trace करना मुश्किल था, और खासकर entity collision handling में कई functions वहीivariable share करते थे, जिससे infinite loop भी संभव था। यह सच में खराब दिखता है, और game code के अस्त-व्यस्त होने वाली धारणा की पुष्टि करता हैcode शानदार हो सकता है लेकिन उबाऊ भी हो सकता है। जैसे अच्छी तरह लिखा गया, लेकिन implementation में फीका calculator app। code अस्त-व्यस्त और उबाऊ भी हो सकता है। जैसे खराब design वाला B2B product, जिसमें सैकड़ों exception conditions हों और हर एक में मिलते-जुलते लेकिन अलग-अलग bugs भरे हों। code शानदार और दिलचस्प भी हो सकता है। Doom जैसी चीजें
this.लगाना बहुत कम परेशान करने वाला लगने लगाउसी निर्माता के Super Hexagon का भी ज़िक्र करना चाहूँगा। बेहद सरल, फिर भी सच में मज़ेदार और बहुत addictive गेम
मुझे याद है कि कहीं पढ़ा था कि निर्माता ने इसे बनाने में लगभग सिर्फ़ एक दिन लगाया था। और VVVVVV का soundtrack PPPPPP भी शानदार है
करीब छह unique characters हैं, हर character के लिए कई challenges हैं, और rules लगातार बदलते रहते हैं, जिससे आपको game को फिर से सोचना पड़ता है। इसमें humor भी खूब है, और free DLC व mod content भी है जिसे मैंने अभी तक आज़माया नहीं है
किसी indie developer का शुरुआती सफलता के बाद पूरी तरह नए genre की ओर मुड़ना हमेशा दिलचस्प होता है, और ऐसे ही कुछ बेहतरीन नगीने निकले हैं। जैसे Fallen London -> Sunless Sea -> Cultist Simulator वाला flow
शुरुआत में यह असंभव लगता है, लेकिन दिमाग adapt कर जाता है। मानो Matrix से परे देखने जैसा एहसास हो
इसे कई लोगों के साथ share भी किया और सबको पागल कर दिया। मुझे अब भी भरोसा है कि मेरे Steam inventory में इसकी 5–6 copies बची होंगी। बस क्या पता कब ज़रूरत पड़ जाए। V, SMB, Braid और कई दूसरे games के साथ भी यही है। कभी-कभी छोटी-सी inspiration और rough graphics ही काफ़ी होते हैं
एक समय था जब मैं Canada से California में अभी-अभी आया था और नौकरी की सख़्त ज़रूरत थी, तो Comcast में door-to-door sales का काम मिला
मुझे वह काम पसंद नहीं था, इसलिए अक्सर car में बैठकर ज़िम्मेदारी से बचता और phone पर VVVVVV खेलता था। Terry की वजह से थोड़ी देर साँस लेने का मौका मिल जाता था
शानदार game। उस दौर के indie games की तरह code सचमुच messy है, इसलिए इसे देखना अच्छा लगता है
Game::updatestate()function और विशाल switch statement हैमैंने इसे Zig के लिए package कर रखा है, और सिर्फ़
zig buildचलाने पर Linux, macOS, Windows पर game खेल सकते हैंhttps://github.com/allyourcodebase/VVVVVV
उन्होंने माना कि function के अंदर जहाँ-जहाँ इस्तेमाल हो वहाँ declare करने से बचने के लिए उन्होंने हर class में
i,j,kdeclare कर दिए, और उम्मीद के मुताबिक इससे गंदे और मुश्किल bugs पैदा हुएहैरानी की बात है कि ऐसे code से उन्होंने एक अच्छा game बना लिया