İçindekiler:

Minecraft Creeper Detector: 6 Adım (Resimlerle)
Minecraft Creeper Detector: 6 Adım (Resimlerle)

Video: Minecraft Creeper Detector: 6 Adım (Resimlerle)

Video: Minecraft Creeper Detector: 6 Adım (Resimlerle)
Video: Minecraft Vs Minecraft trial / who is best #minecraft #minecraftshorts #comedyvideo 2024, Kasım
Anonim
Image
Image
Minecraft Creeper Dedektörü
Minecraft Creeper Dedektörü
Minecraft Creeper Dedektörü
Minecraft Creeper Dedektörü

allwinedesigns tarafındanAllwine DesignsYazar tarafından daha fazla takip edin:

Özelleştirilebilir Dübel Jig
Özelleştirilebilir Dübel Jig
Özelleştirilebilir Dübel Jig
Özelleştirilebilir Dübel Jig
Beşinci Çember MIDI Cihazı
Beşinci Çember MIDI Cihazı
Beşinci Çember MIDI Cihazı
Beşinci Çember MIDI Cihazı
PocketNC Jog Wheel Olarak Özel Fare Tekerleği (veya ses kontrol kadranı)
PocketNC Jog Wheel Olarak Özel Fare Tekerleği (veya ses kontrol kadranı)
PocketNC Jog Wheel Olarak Özel Fare Tekerleği (veya ses kontrol kadranı)
PocketNC Jog Wheel Olarak Özel Fare Tekerleği (veya ses kontrol kadranı)

Hakkında: Hayatım boyunca bir yazılım geliştiricisi oldum, üniversitede 3D grafiklere odaklanarak bilgisayar bilimi okudum, Dreamworks Animation için efekt sanatçısıydım ve burada çocuklara ve yetişkinlere teknoloji öğrettim… Allwinedesigns Hakkında Daha Fazlası »

Birkaç yıl boyunca Bozeman Çocuk Müzesi'nin STEAMlab için müfredat geliştirmesine yardım ettim. Her zaman çocukları elektronik ve kodlama ile meşgul etmenin eğlenceli yollarını arıyordum. Minecraft, çocukları kapıdan içeri sokmanın kolay bir yoludur ve onu eğlenceli ve eğitici şekillerde kullanmak için tonlarca kaynak vardır. Yine de Minecraft ve elektroniği birleştirmek zordu. Arduino projelerini Minecraft ile entegre etmeye yardımcı olmak için SerialCraft adlı kendi Minecraft modumu geliştirdim. Fikir, seri iletişim kullanan herhangi bir cihazı bağlayabilmeniz ve modumu kullanarak Minecraft'a mesaj gönderip ondan mesaj alabilmenizdi. Çoğu Arduino, USB üzerinden seri iletişim yeteneğine sahiptir, bu nedenle bir devreyi bağlamak ve seri bağlantı üzerinden bazı verileri göndermek kolaydır. Çocukların karakterlerini kontrol etmek, Redstone sinyallerini tetiklemek ve yanıtlamak için bir araya getirip programlayabilecekleri ve düşük ömür veya bir sarmaşık yakın olduğunda onları uyarmak için LED'leri yakıp söndürebilecekleri kontrolör kitleri yarattım. Bu Eğitilebilir Kitap, sürüngen uyarı işlevine odaklanır ve Adafruit Neopikselleri ve lazerle kesilmiş akrilik ve kontrplak muhafaza kullanarak onu bir adım daha ileri götürür. Creeper Detector, size en yakın creeper hakkında değerli bilgiler vermek için 8 LED NeoPixel çubuk kullanır. Tüm LED'ler kapalı olduğunda, 32 blok içinde sürüngen olmadığı anlamına gelir. Tüm LED'ler yandığında (aynı zamanda yanıp sönecekler), creeper'ın 3 blok patlama yarıçapı içindesiniz (creper'ın duracağı, sigortasını yakacağı ve patlayacağı yarıçap). Aradaki herhangi bir şey, bir sarmaşıktan ne kadar uzakta olduğuna dair bir tahmin verebilir. 8 LED'den 4'ü yandığında, bir sarmaşıktan yaklaşık 16 blok ötedesinizdir; bu, bir sarmaşık sizi görürse saldıracağı aralıktır. Creeper'ın (7 blok) patlama yarıçapı içinde olduğunuzda LED'ler yanıp sönmeye başlayacaktır. Aynı zamanda, dışarı çıkarsanız, sarmaşık sigortasını durduracak ve peşinizden gelmeye devam edecek yarıçaptır. Bu bilgiyle, beklenmedik herhangi bir creeper saldırısını önleyebilmeli veya yakındaki tüm creeper'ları avlayabilmelisiniz!

Bu Eğitilebilir Kitapta, kendi Creeper Dedektörünüzü oluşturmak için ihtiyacınız olan her şeyi ve Minecraft'ı Arduino projelerinizle arayüz oluşturmanıza izin veren SerialCraft modunu nasıl kuracağınızı ve kullanacağınızı gözden geçireceğiz. Beğendiyseniz, lütfen Minecraft Yarışması ve Epilog Mücadelesi'nde oylamayı düşünün. Başlayalım!

Adım 1: İhtiyacınız Olan Şeyler

Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak
Neye ihtiyacınız olacak

Kullandığım ürünlere bağlantı vermek için elimden gelenin en iyisini yaptım, ancak bazen Amazon'da bulabileceğim en yakın şeyi buluyorum. Bazen çevrimiçi olarak daha büyük miktarlarda satın almaktan kaçınmak için yerel elektronik mağazasından veya hırdavatçıdan birkaç şey almak en iyisidir.

- 8 LED RGBW NeoPixel çubuk kullandım, ancak beyaz (W) LED'i hiç kullanmadım, bu nedenle 8 LED RGB NeoPixel çubuk yeterli. Bunu herhangi bir RGB veya RGBW NeoPixel ürünü için değiştirebilirsiniz, ancak bir sonraki adımda tartışacağımız güç konuları ve buraya geldiğimizde işaret edeceğim kod değişiklikleri var. Lehim gerektirmeyen birini seçmek isteyebilirsiniz, ancak size telleri çubuğa nasıl lehimlediğimi göstereceğim.

- Bir mikrodenetleyici ve buna uygun USB kablosu. Arduino Uno klonu olan SparkFun'un RedBoard'ını kullandım. Bir Mini B USB konektörü kullanır (Amazon'da neden bu kadar pahalı olduğundan emin değilim, doğrudan SparkFun'dan buradan alabilir veya Amazon'da bunun gibi bir alternatife gidebilirsiniz). Kodlamayı basitleştirmek için bir Arduino kitaplığı kullanacağız, ancak yalnızca temel Seri iletişimi kullanır, böylece kitaplık muhtemelen USB Seri yapabilen herhangi bir mikro denetleyici üzerinde çalışmak üzere taşınabilir. Hemen hemen her Arduino yapacaktır. USB Seri olduğundan emin olun (çoğu var, ancak bazıları orijinal Biblo gibi değil).

- Teller, havya ve lehim (kablo sıyırıcılar ve üçüncü el de kullanışlıdır). Bir Arduino'ya takılabilmesi için NeoPixel çubuğuna kablo lehimleyeceğiz. Halihazırda kabloları bağlı olan bir NeoPixel ürününü veya NeoPixel ile birlikte gelen bir mikro denetleyiciyi seçerseniz bunlar gereksiz olabilir (gelecekteki bir adımda kodunu eklediğim Circuit Playground Express gibi). 8 LED çubuğunun form faktörü, Creeper Detector'ın muhafazasını tasarladığım şeydi, bu yüzden farklı bir form faktörü için giderseniz değişiklikler yapmanız veya kasa olmadan gitmeniz gerekecek.

- Muhafaza malzemeleri. Lazerle kestiğim 1/8" buzlu akrilik, 1/8" şeffaf akrilik ve 1/8" kontrplak ve bir arada tutmak için M3 makine vidaları ve somunları kullandım. Ayrıca NeoPixel çubuğunu muhafazaya sabitlemek için bazı #2 x 1/4" ahşap vidalar kullandım. Muhafaza gereksizdir, ancak kesinlikle ekstra bir sarmaşıklık özelliği katar. Kasam, mikro denetleyiciyi değil, yalnızca NeoPixel'leri barındırmak için tasarlanmıştır. tamamen bağımsız olmasını istiyorsanız, değişiklik yapmanız gerekecek!

- Bir Minecraft hesabı, Minecraft Forge 1.7.10 ve SerialCraft (mod ve Arduino kütüphanesi). Creeper Detector, yalnızca Minecraft 1.7.10'da Minecraft Forge ile çalışan SerialCraft moduna güvenir. Bunların nasıl indirileceğini ve gelecekteki adımlarda nasıl kurulacağını tartışacağız.

- Arduino IDE veya Arduino Create'teki bir hesap ve Arduino Create eklentisi (Doğrudan Arduino Create taslağıma gidip oradan derleyip yükleyebileceğiniz için Arduino Create kullanmanızı öneririm).

Adım 2: Devre

Devre
Devre
Devre
Devre
Devre
Devre
Devre
Devre

Devre çok basit, sadece 3 tel, NeoPixel çubuğu ve bir Arduino. Tüm Adafruit NeoPixel'lerin, tek bir veri kablosunun herhangi bir sayıda zincirleme LED'i kontrol etmesine izin veren kendi denetleyicileri vardır. Arduino'mdaki pin 12'ye bağladım.

Diğer iki kablo güç ve toprak içindir. NeoPixels'e güç sağlamak için 5V'luk bir güç kaynağına ihtiyacımız olacak. Yine de güç kaynağımızın yeterli akım sağlayabildiğinden emin olmamız gerekiyor. Her NeoPixel, tam parlaklıkta 60mA'ya (RGBW LED'lerle 80mA) kadar çekebilir. 8 LED ile bu, maksimum akımımızın 480mA (RGBW LED'lerle 640mA) olduğu anlamına gelir. Arduino'nun açılması sadece ~ 40mA sürer. İlk bakışta bu, harici bir güç kaynağı kullanmamız gerekecek gibi görünüyor. USB, tüm LED'lerimizi maksimuma ayarlarsak aşabileceğimiz maksimum 500mA'ya izin verir (RGB LED'lerle 480+40=520 veya RGBW LED'lerle 640+40=680). Neyse ki, LED'leri hiçbir zaman tam parlaklıklarına çevirmemiz gerekmeyecek (tam parlaklık oldukça göz kamaştırıcıdır), bu nedenle USB ile takılı Arduino'muzun 5V rayını kullanarak güvende olacağız. Aslında, seçtiğim yeşil rengi kullanmak, USB tarafından empoze edilen maksimum 500mA'nın oldukça altında, toplam ~ 100mA maksimum akım çekimi için LED başına maksimum ~ 7-8mA kullanacak.

Yani, tek yapmamız gereken NeoPixel çubuğunun DIN pinini pin 12'ye (neredeyse tüm pinler işe yarar, ama bu benim kullandığım pin), NeoPixel çubuğundaki 5V pinini Arduino'da 5V'a bağlamak ve Arduino'daki GND'ye NeoPixel çubuğundaki bir GND pimi. Öncelikle tellerimizi NeoPixel çubuğuna lehimlememiz gerekiyor.

Konektörleri kablolarınızın bir ucundan kesin ve uçlarını soyun. Her birini kalaylayın (uçların her birine lehim uygulayın). Ardından, pedlerin her birine biraz lehim koyun. Her bir pede havya ile dikkatlice dokunun, ilgili telin ucunu pede koyun ve ardından ütüyü çıkarın.

Adım 3: Kod

GÜNCELLEME (2/19/2018): Creeper Detector'ın Circuit Playground Express üzerinde çalışması için gerekli tüm değişiklikleri içeren GitHub deposuna yeni bir Arduino taslağı gönderdim (muhafaza ile çalışmayacak, ancak hepsi var LED'ler ve kartın içine yerleştirilmiş bazı sensörler, bu nedenle lehimleme gerekmez). Düğmelerine ve kaydırma anahtarına bağlı bazı ekstra işlevler içerir!

Kodun tamamı için Arduino Create taslağıma veya GitHub deposuna gidebilirsiniz. Kodu nasıl derleyip yükleyeceğinizden emin değilseniz buradaki talimatları izleyin. Arduino IDE'yi kullanmayı seçerseniz, SerialCraft Arduino kitaplığını kurmanız gerekir. Bunu yapmak için burada "Bir Zip İçe Aktarma" altındaki adımları izleyin. Arduino Create Web Editor kullanıyorsanız, kurulumu yaptıktan sonra doğrudan çizimime gidebilir ve SerialCraft kütüphanesini kurma ihtiyacından kurtulabilirsiniz.

Aşağıda kodun ne yaptığını gözden geçireceğim.

İlk iki satır kitaplıkları içerir. Birincisi, SerialCraft.h, SerialCraft modu ile kolay iletişim sağlayan benim yazdığım bir kütüphanedir. Aşağıda kullandığım özelliklerde size yol göstereceğim, ancak GitHub deposunda bazı çalışmalara ihtiyaç duyan örneklere ve bazı belgelere göz atabilirsiniz. İkinci kitaplık Adafruit'in NeoPixel kitaplığıdır ve NeoPixel şeritlerindeki LED'leri ayarlamak için bir API sağlar.

#Dahil etmek

#Dahil etmek

4-17 arasındaki satırlar, kurulumunuza bağlı olarak değişebilen sabitlerdir. Farklı sayıda piksele sahip bir NeoPixel şeridi kullandıysanız veya NeoPixel'inizi farklı bir pime bağladıysanız, ilk iki tanımlamada, NUMLEDS ve PIN'de değişiklik yapmanız gerekir. LED_TYPE'ı sahip olduğunuz türe değiştirmeniz gerekecek, sorun yaşıyorsanız NEO_GRBW'yi NEO_RGB veya NEO_RGBW olarak değiştirmeyi deneyin. Sürüngenleri tespit edebileceğiniz aralığı ayarlamak isterseniz BLOCKS_PER_LED'i değiştirebilirsiniz.

// Bu değişkenleri kurulumunuza uyacak şekilde değiştirin

// şeridinizdeki LED sayısı #define NUMLEDS 8 // LED veri pininin bağlı olduğu pini #define PIN 12 // her bir LED'in temsil ettiği blok sayısı #define BLOCKS_PER_LED 4 // Sahip olduğunuz LED şeridinin türü (eğer LED'leriniz yeşile dönmüyorsa GRBW'nin sırasını değiştirmeniz gerekir) #define LED_TYPE (NEO_GRBW+NEO_KHZ800) // END değişkenleri

19-27 arasındaki satırlar daha sonra kullanacağımız bazı değerleri tanımlar. DETONATE_DIST, Minecraft'ta bir creeper'ın hareket etmeyi bırakacağı, sigortasını yakacağı ve patlayacağı mesafedir. SAFE_DIST, bir creeper'ın patlama yarıçapıdır. Bu değerleri değiştirmek LED'lerin davranışını etkileyecektir, ancak Minecraft'taki davranışları yansıttıkları için onları oldukları gibi tutmanızı tavsiye ederim. MAX_DIST, NeoPixel şeridimizin sahip olduğu LED sayısına ve yukarıda tanımladığımız BLOCKS_PER_LED sabitine dayanan sürüngenleri izleyeceğimiz maksimum mesafedir.

// LED parlaklığı hesaplamalarımızda kullanılacak değerlerdir.

// mesafe creeper patlamaya başlayacak #define DETONATE_DIST 3 // creeper patlamasına karşı güvende olduğumuz mesafe (bu mesafe içindeyseniz hasar alırsınız) #define SAFE_DIST 7 // bir creeper izlediğimiz maksimum mesafe #define MAX_DIST (NUMLEDS*BLOCKS_PER_LED)

29-36. satırlar, program boyunca kullanacağımız bazı değişkenleri tanımlar. sc değişkeni, SerialCraft Minecraft moduyla iletişim kurmak için kullanımı kolay bir arayüz sağlayan bir SerialCraft nesnesidir. Aşağıda nasıl kullandığımızı göreceksiniz. dist, SerialCraft modundan creeper mesafe mesajını aldığımızda en yakın creeper'a olan mesafeyi ayarlayacağımız bir değişkendir. şerit, NeoPixel şeritlerini kontrol etmek için yöntemler sağlayan bir Adafruit_NeoPixel nesnesidir.

// Bu, SerialCraft Minecraft moduyla iletişim kurmak için SerialCraft nesnesidir.

SerialCraft sc; // sürüngenden uzaklık int dist = 100; // Bir LED şeridini başlatın, 3. Adafruit_NeoPixel şeridini değiştirmeniz gerekebilir = Adafruit_NeoPixel(NUMLEDS, PIN, LED_TYPE);

38-47 arasındaki satırlar bizim kurulum fonksiyonumuzdur. Tüm Arduino betiklerinin bir tane olması gerekir. Arduino açıldığında bir kez çalıştırılır, bu nedenle değişkenleri başlatmak için harika bir yerdir. Seri bağlantı noktasını SerialCraft modunda (115200) yapılandırılanla aynı baud hızında başlatmak için SerialCraft nesnemizde setup() yöntemini çağırırız. Ardından SerialCraft modunun bize gönderdiği creeper mesafe mesajlarına cevap verebilmemiz için registerCreeperDistanceCallback yöntemini çağırıyoruz. Biraz daha aşağıda, periyodik olarak sc.loop() yöntemini çağıracağız. Döngü yönteminde, SerialCraft modundan herhangi bir mesaj alıp almadığımızı veya bir düğmeye basmak gibi herhangi bir olayı tetikleyip tetiklemediğimizi kontrol eder ve işlemek için kaydettiğimiz ilgili işlevi çağırır. Tek yaptığımız en yakın sarmaşık mesafesini aramak, yani kaydettiğimiz tek işlev bu. Aşağıda, bu fonksiyonda yaptığımız tek şeyin, LED'leri güncellerken kullanacağımız dist değişkenimizi ayarladığını göreceksiniz. Son olarak, strip.begin() ve strip.show() kullanarak LED şeridimizi başlatıyoruz ve tüm LED'leri kapatıyoruz.

void setup() { // SerialCraft'ı başlat sc.setup(); // en yakın creeper'a olan mesafeyi almak için bir creeper mesafesi geri çağrısı kaydedin sc.registerCreeperDistanceCallback(creeper); // LED şerit şeridini başlat.begin(); şerit.göster(); }

49-80 arasındaki satırlar döngü fonksiyonunu tanımlar. Döngü işlevi, tüm sihrin gerçekleştiği yerdir. Döngü işlevi tekrar tekrar çağrılır. Döngü işlevi çalışmayı bitirdiğinde, tekrar en baştan başlar. İçinde, her bir LED'in durumunun ne olması gerektiğini belirlemek için dosyanın üstündeki dist değişkenini ve sabitlerimizi kullanırız.

Döngü fonksiyonunun en üstünde birkaç değişken tanımlıyoruz.

//, creeper'ın patlama yarıçapından >= MAX_DIST uzaktayken 0 ile creeper'ın üstündeyken NUMLEDS*BLOCKS_PER_LED arasında değişir

int bloklarFromCreeperToMax = constrain(MAX_DIST+DETONATE_DIST-dist, 0, MAX_DIST); int curLED = bloklarFromCreeperToMax/BLOCKS_PER_LED; // 0 ile NUMLEDS-1 arasında değişir int curLEDLevel = (blocksFromCreeperToMax%BLOCKS_PER_LED+1); // 1 ile BLOCKS_PER_LED arasında değişir

LED'leri sarmaşıklara ne kadar yakın olduğumuza göre yaktığımız için, mesafe değişkenimizi etkin bir şekilde tersine çevirmemiz gerekiyor. Creeper'ın izlemeyi önemsediğimiz maksimum mesafeden aldığı blok sayısını temsil etmek için blockFromCreeperToMax'ı tanımlarız. Creeper'ın tepesindeyken (veya daha doğrusu, creeper'dan DETONATE_DIST'e eşit veya daha az uzaktayken), bloklarFromCreeperToMax MAX_DIST olacaktır. Bir creeper'dan MAX_DIST ötesinde olduğumuzda,blockFromCreeperToMax 0 olacaktır. Bu değişken, LED'lerimizi ne kadar büyükse, o kadar çok LED yaktığımızda faydalı olacaktır.

curLED, en çok yanacak olan LED'dir. Bir creeper'a doğru hareket ettiğimiz her 4 blokta ek bir LED yanacaktır (bu sayı dosyanın en üstünde BLOCKS_PER_LED değişkeni ile değiştirilebilir). En üstteki LED'in parlaklığını ayarlıyoruz, böylece mesafedeki değişiklikleri tek bir bloğa kadar görebiliyoruz. curLEDLevel, bu parlaklık değişikliklerini hesaplamak için kullanacağımız bir değişkendir. 1 ile 4 arasında değişir (veya BLOCKS_PER_LED ne olarak tanımlanırsa tanımlansın).

Her bir LED üzerinde döngü yaparken bu değişkenleri kullanacağız:

for(uint16_t i = 0; i < strip.numPixels(); i++) { if(i <= curLED) { // creeper'ın patlama yarıçapı içindeyken en parlak, creeper NUMLEDS olduğunda kapalı*BLOCKS_PER_LED uzakta float yoğunluğu = (float)blocksFromCreeperToMax /MAX_DAĞ; if(i == curLED) { // son LED yanar // bir sonraki LED'e yaklaşırken son LED'i daha parlak hale getirir float lastIntensity = (float)curLEDLevel/BLOCKS_PER_LED; yoğunluk *= sonYoğunluk; } if(dist < SAFE_DIST) { yoğunluk *= (milis()/75)%2; } yoğunluk = güç(yoğunluk, 2.2); // gama eğrisi, parlaklık değeri gerçekten strip.setPixelColor(i, strip. Color(10*intensity, 70*intensity, 10*intensity, 0)); } else { strip.setPixelColor(i, strip. Color(0, 0, 0, 0)); } }

Güncellediğimiz mevcut LED, curlLED değişkeninden küçük veya eşitse, açık olması gerektiğini biliyoruz ve parlaklığını hesaplamamız gerekiyor. Aksi takdirde, kapatın. LED'imizin parlaklığını temsil etmek için 0 ile 1 arasında bir değere sahip olacak bir yoğunluk değişkeni kullanıyoruz. LED'in son rengini ayarlarken, yoğunluğu yeşil bir renk olan renk (10, 70, 10) ile çarpacağız. MAX_DIST'e bölerek bir yüzde elde etmek için bloklarFromCreeperToMax değişkenini kullanırız, böylece bir sürüngene yakın olduğumuzda LED'ler en parlak olur. CurLED'in parlaklığını hesaplıyorsak, o zaman creeper'ın sizden olduğu her mesafe bloğu için parlaklığını BLOCKS_PER_LED ayarına kadar değiştiririz. Bu ince bir değişikliktir, ancak bir sarmaşığın fazladan bir LED'in yanması için gereken 4 bloktan daha ince bir tanede yaklaşıp yaklaşmadığını görmek için kullanılabilir. Ardından, sarmaşıkların patlama yarıçapı içinde olup olmadığımızı kontrol ediyoruz ve eğer öyleysek göz kırpıyoruz. (millis()/75)%2 ifadesi, 75 milisaniye boyunca 0 ve ardından 75 milisaniye boyunca 1 olarak art arda değerlendirilir, bu nedenle yoğunluğumuzu bu ifadeyle çarpmak LED'lerin yanıp sönmesine neden olur.

Yoğunluktaki son değişiklik (yoğunluk = pow(yoğunluk, 2.2)), gama düzeltmesi adı verilen bir ayarlamadır. İnsan gözü ışığı doğrusal olmayan bir şekilde algılar. Parlak ışığın görebildiğimizden daha fazla loş ışık dereceleri görebiliriz, bu nedenle parlak bir ışığın parlaklığını azalttığımızda, lineer bir şekilde aşağı iniyormuş gibi görünmek için ışığın loş olduğu zamandan daha fazla aşağı ineriz. insan gözü için moda. Bu değişikliğin bir yan etkisi, piksellerimizin daha parlak (daha yüksek enerji) aralığından daha sönük (düşük enerji) aralığında daha fazla derecelendirmeye sahip olması nedeniyle daha az enerji kullanmamızdır.

Döngü fonksiyonumuzun son iki satırı, LED'leri az önce ayarladığımız değerlere günceller ve ardından SerialCraft tarafından çağrılması gereken herhangi bir işleyiciyi çağırır (bu durumda, SerialCraft modundan herhangi bir creeper mesafe mesajı aldıysak, creeper Distance fonksiyonu).

şerit.göster();

sc.loop();

Komut dosyamızın son satırları, SerialCraft modu bize bu bilgiyi içeren bir mesaj gönderdiğinde en yakın creeper'a olan mesafeyi sakladığımız creeper işlevidir.

void creeper(int d) { dist = d; }

Şimdi sadece kodu derlemeniz ve yüklemeniz gerekiyor!

4. Adım: Muhafaza

muhafaza
muhafaza
muhafaza
muhafaza
muhafaza
muhafaza

Bir adet buzlu akrilik sarmaşık, bir adet şeffaf akrilik sarmaşık, 6 adet plywood, akrilik sarmaşık boyutunda dikdörtgen delikli ve köşelerinde bağlantı elemanları için delikler ve 1 adet plywooddan oluşan kasamın tüm parçalarını lazerle kestim. bağlantı elemanları delikleri olan arka kısım için ve kabloların çıkması için daha büyük bir delik. Kabloları NeoPixel çubuğundan ayırın, böylece onu muhafazamıza monte edebiliriz. Aşağıdaki iki PDF dosyası, tarif ettiğim tüm parçaları lazerle kesmek için kullanılabilir.

NeoPixel çubuk, 2 numaralı ahşap vidalar ve naylon ara parçalar kullanılarak kontrplağın arka parçasına monte edilir. Akrilik sürüngenler, kare delikli iki kontrplak parçasına sıkıştırılır. Bunu yapmadan önce, çubukta hangi tel renginin hangi pede gittiğini hatırladığınızdan emin olun.

Akrilik sürüngenler, kontrplak ile çok rahat bir uyum sağlamak için deliklerden yüzde 1 inç daha büyüktür. Her köşeye odaklanmış baskı uygulamak için tel sıyırıcıların sapını kullandım ve eşit bir uyum sağlamak için tüm sarmaşık boyunca çalıştım. Alternatif olarak, akrilik lazer pdf, muhafazanın tam yüzünün boyutunda bir parçaya oyulmuş bir sarmalayıcı içerir, böylece daha küçük akrilik sarmaşıkla sıkı bir şekilde oturmaktan kurtulabilirsiniz.

Buzlu akrilik, ışığı tek tek LED'lerden dağıtır ve şeffaf akrilik, sarmaşık oymacılığını daha iyi gösterir, bu nedenle her ikisi de ayrı ayrı olduğundan daha iyi görünüyor. Sürüngenler yerleştirildikten sonra, tüm kontrplak parçalarınızı bir araya toplayın ve M3 makine vidaları ve somunlarıyla birbirine sabitleyin. Ardından kabloları 5V, GND ve pin 12'ye yeniden bağlayın.

Adım 5: Minecraft Forge ve SerialCraft Modu

Minecraft Forge ve SerialCraft Modu
Minecraft Forge ve SerialCraft Modu
Minecraft Forge ve SerialCraft Modu
Minecraft Forge ve SerialCraft Modu
Minecraft Forge ve SerialCraft Modu
Minecraft Forge ve SerialCraft Modu

Bir Minecraft hesabı oluşturarak başlayın, ardından Minecraft istemcisini indirip yükleyin.

SerialCraft modunu yükleyebilmek için 1.7.10 sürümü için Minecraft Forge'a ihtiyacınız olacak. 1.7.10 Minecraft Forge indirme sayfasına gidin. Minecraft Forge sitesinde, yanlış şeyi tıklatıp sizi başka bir yere götürmeye çalışan birçok reklam var. Doğru yolda kaldığınızdan emin olmak için yukarıdaki resimleri takip edin! Önerilen 1.7.10 sürümünün altındaki Yükleyici düğmesine tıklamak isteyeceksiniz (veya en son sürüm, aradaki farktan tam olarak emin değilim). Sayfanın üst kısmında "Bu başlığın altındaki içerik bir reklamdır. Geri sayımdan sonra Forge indirmenizi başlatmak için sağdaki Atla düğmesini tıklayın" yazan bir banner bulunan bir sayfaya yönlendirileceksiniz. Geri sayımı beklediğinizden emin olun ve ardından indirmeyi başlatmak için Atla düğmesini tıklayın.

İndirmeyi bitirdikten sonra yükleyiciye çift tıklayın. Varsayılanları işaretli bırakın (İstemciyi Yükle ve belirttiği varsayılan yol), ardından Tamam'a tıklayın. Minecraft Forge'ı kuracak. Bittiğinde Minecraft Launcher'ı başlatabileceksiniz, ancak Forge'un 1.7.10 sürümünü seçmek için ekstra bir seçenek olacak (yukarıdaki resme bakın).

Şimdi SerialCraft modunu mods dizininize kurmamız gerekiyor. SerialCraft modunun en son sürümünü buradan indirin. Ayrıca jssc kitaplığına da ihtiyacınız olacak. Her iki dosyayı da açın, bu da sizi iki.jar dosyasıyla baş başa bırakacaktır. Bu dosyaları mods klasörünüze koymanız gerekecek. Windows'ta, Çalıştır'a tıklamadan önce başlat menüsünden Çalıştır'a gidip %appdata%\.minecraft\mods girebilmeniz gerekir. Mac'te Ana Sayfa/Kütüphane/Uygulama Desteği/minecraft/mods'a gidebilirsiniz. İki.jar dosyasını az önce açtığınız klasöre bırakın. Şimdi Minecraft'ı çalıştırın ve 1.7.10 Forge sürümünü başlatın. Modlar'a tıklayabilmeli ve sol tarafta listelenen SerialCraft'ı görebilmelisiniz.

Adım 6: SerialCraft Modunu Kullanma

SerialCraft Modunu Kullanma
SerialCraft Modunu Kullanma

Artık SerialCraft modunu yüklediğinize göre, bir dünyaya girmeniz ve onu kullanmaya başlamanız gerekecek. Yeni bir dünya yaratın veya kayıtlı dünyalarınızdan birini açın (çok oyunculu bir haritada oynamak istiyorsanız, sunucunun ve ona bağlanan tüm istemcilerin SerialCraft modunun kurulu olduğundan emin olmanız gerekir). Creeper Detector cihazınızın bilgisayarınıza bağlı olduğundan emin olun, ardından K tuşuna basın. Yukarıdaki resim gibi bir iletişim kutusu açmalıdır (Windows'ta /dev/tty.usbserial yerine… COM1 gibi bir şey söylemelidir). Hiçbir şey gösterilmiyorsa, Creeper Detector'ı bağladığınızdan emin olun. Bağlan düğmesini tıklayın, ardından Escape'e basın. Kodunuz doğru bir şekilde derlenmiş ve yüklenmişse, Creeper Detector'ınız kullanıma hazır olacaktır! Bir Creeper 32 blok içindeyse, yanmalıdır. İyi avlar!

Bu Eğitilebilir Yazıyı beğendiyseniz, lütfen Minecraft Yarışması ve Epliog Yarışması'nda ona oy vermeyi düşünün!

Minecraft Mücadelesi 2018
Minecraft Mücadelesi 2018
Minecraft Mücadelesi 2018
Minecraft Mücadelesi 2018

Minecraft Challenge 2018'de İkincilik Ödülü

Önerilen: