# Maintainer: jc_gargma # Maintainer (Arch): Kyle Keen # # I maintain this because: # Arch version is not BN # Arch version has non-functional desktop file # Arch version lacks additional optimization and hardening flags # Arch version lacks the MSX++UnDeadPeopleEdition tileset # Arch version lacks the @ soundpack # Arch version lacks the CO.AG musicpack pkgbase=cataclysm-bn pkgname=(cataclysm-bn cataclysm-bn-tiles) pkgname=cataclysm-bn _pkgname=Cataclysm-BN-cbn-experimental pkgver=202208062156 _pkgver=2022-08-06-2156 pkgrel=2 pkgdesc="A post-apocalyptic roguelike." #url="http://cataclysmrl.blogspot.com/" #url="http://www.cataclysm.glyphgryph.com/" #url="http://en.cataclysmdda.com/" url="https://github.com/cataclysmbnteam/Cataclysm-BN" arch=('x86_64' 'aarch64') license=("CCPL:by-sa") options=(lto) depends=('ncurses' 'hicolor-icon-theme' 'gettext') makedepends=('sdl2_image' 'sdl2_ttf' 'sdl2_mixer' 'freetype2' 'astyle') source=("$pkgname-$_pkgver.tar.gz::https://github.com/cataclysmbnteam/Cataclysm-BN/archive/refs/tags/cbn-experimental-$_pkgver.tar.gz" "cataclysm-bn.desktop" "cataclysm-bn-tiles.desktop" "icon_128x128.png" "revert-01_removed-traits.patch" "revert-02_revert-book-revamp.patch" "revert-03_generic-nv.patch" "revert-04_telescopic-lenses.patch" #"revert-05_No-filth-and-fault-on-uninstalled-bionics-1389.patch" "revert-06_Obsolete-useless-hub01-basement-1457.patch" "revert-07_Remove-handload-quality-distinction-1481.patch" "ammo-01_inconsistent-ammo-names.patch" "ammo-02_fix-20x66mm-loudness.patch" "ammo-03_fix-reloaded-50bmg.patch" "ammo-05_22-casings-can-stack.patch" "ammo-10_ammo-order-fix.patch" "armor-01_ankle-ammo-pouch-is-not-a-backpack.patch" "armor-02_fix-survivor-fingerless-gloves-warmth.patch" "bionics-01_npc-can-use-more-bionics.patch" "faction-01_more-factions.patch" #"faction-02_more-monster-factions.patch" "faction-03_fix-food-supply-calculations.patch" "factioncamp-01_remove-legacy-recruiting-penalty.patch" "foods-01_fix-food-materials.patch" "foods-02_fix-food-naming.patch" "itemgroups-01_hk46-is-milspec.patch" "itemgroups-02_add-missing-mre.patch" "itemgroups-03_fix-shelter-batteries.patch" "meds-01_antibiotics-unhealthy.patch" "mission-01_typos.patch" "monsters-01_medical-zombies-called-zombies.patch" #"monsters-02_power-leech-update.patch" "mutations-01_nerf-lightstep.patch" "mutations-02_fix-evac3-background-visible.patch" "mutations-03_eye-colours.patch" "npc-01_isherwood-update.patch" "npc-02_tacoma-update.patch" "npc-03_godco-update.patch" "npc-04_island-prison-update.patch" "npc-05_kindred-update.patch" "npc-06_lapin-update.patch" "npc-07_lighthouse-family_v2.patch" "npc-08_nurse-takes-more-meds.patch" "npc-09_broker-takes-more-foods.patch" "npc-10_bunker-merchant.patch" #"npc-nn_refugee.patch" #"npc-nn_robofac-v2.patch" "npc-20_dialogue-fixes.patch" "recipes-01_4570-dragon-can-be-dismantled.patch" "terrain-01_migo-platform-landing-pad.patch" "terrain-03_tacoma-clinic-add-missing-floor.patch" "terrain-04_lumbermill-gasoline-not-spilled.patch" "terrain-05_community-garden-fertilizer-not-spilled.patch" "terrain-06_fix-doors-for-npcs.patch" "terrain-07_rehide-redacted.patch" "terrain-08_derelict-shed-is-s.patch" "terrain-09_make-firestation-shelter-wells-npc-drinkable.patch" "tools-01_foldable-bottle-is-container.patch" "tools-02_vacutainer-is-not-a-weapon.patch" "tools-03_shears-use-light-battery.patch" "tools-04_normalize-drone-volume.patch" "vehicles-01_portable-generator-engine.patch" "etc-01_fix-rubbersplosion.patch" "etc-02_add-missing-price-postapoc.patch" "jc_radio-can-use-ups.patch" "jc_ammo-loudness-ap-times-2.patch" "jc_allow-bio-firestarter-on-smoker.patch" "jc_stop-non-faction-npc-sleep-depirvation.patch" "jc_stop-non-faction-npc-malnourishment.patch" "jc_stop-sleeping-on-tables.patch" "jc_allow-hacker-laptop.patch" "jc_more-military-base-overmap.patch" "jc_npc-eat-from-further-camp.patch" "jc_reduced-kcal-during-sleep.patch" "vampirism.patch" "cataclysm-dda-tileset_undeadpeople.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-tileset_undeadpeople.git/snapshot/cataclysm-dda-tileset_undeadpeople-master.tar.xz" "cataclysm-dda-mod_battle-maid-redone-tileset.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-mod_battle-maid-redone-tileset.git/snapshot/cataclysm-dda-mod_battle-maid-redone-tileset-master.tar.xz" "cataclysm-dda-soundpack_jcsoundpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-soundpack_jcsoundpack.git/snapshot/cataclysm-dda-soundpack_jcsoundpack-master.tar.xz" "cataclysm-dda-musicpack_coag-musicpack.tar.xz::https://library.iserlohn-fortress.net/cataclysm-dda-musicpack_coag-musicpack.git/snapshot/cataclysm-dda-musicpack_coag-musicpack-master.tar.xz" ) b2sums=('670541c80a6ca19564b2b0ff7926049ab4310085c37b875924501c4ef83aa4374653228cc221aee1f11c425e8ab1092d5bfc9afba147dade7c9db9407a1f6b6d' '069ecde58859b3d44cd687c4b6e718610cefb693ff86e66f199ebfb1b3072023ad2b6f0c28e27ef9c1ce4997f6a5b2ca0d45046996b3ff35a4aeaeb1a7cf9421' 'ad88bc6c1e3c8183a313b5eec42f98d6956afea349feff34a86e4536c9921fa99d2594282caf27de8ebb7ffb56376ed2e76d572227bfd6d8173c7bb1f01e23b8' '6f70e90359a14e4839d9a2683debb88850e5dd387add911ad68fd87e5512cfcdd435da63e1e370358153673fd5a72a9b1e9c94f1979edb7948b4da8c82407bad' '839c92715bfd1f63d94d6d252813a19e6093ded3e45f9efbbc4953ab85adfb886bcdfcfa41c9bb9ed422c0a32917a1ac75f98019e7de946b840e345cd3969d19' '5a33531c5742bbee44b1b3edec89cfceb6e0f161a5e0f0b131149fec010be4ab45095fdc558d0dd0023182cde66200f387f819aa392410dd317c0bc8dddb6294' 'e417a1786fbafb685099431f7f9926201ab80636bf3812da67acc341c7ef2b6a3853734d5b8b1bc355acbd5c0bedefb0401f8854aa5cb00032550afc8a7b9ebe' '4563b0454c67b003fc1e266345d609d8cce5d60f5d19e9936f441c3b75a98d7c162959286da9507e79def7544675cba8c9e589cca55ed9a1ed261ac608ac7c1a' '2d197903715263628e767e867e9b20b9ebd3d85f8983ac8f1e2b534f2b6f8c0470886c79a409f117ad43348aa6aef2a6298925ae27faa32814183ad7677528ac' '1a54b9a3e742061d34409e24fb347c00735cfaf29f945e29881fd2571f3cd57eddc711750dd2fd914da761c26ae3db6810c88cbff493df353b7533244c990637' '207f765e998c5a92db2030e25779c98d57ed50ce6664d94439e4fdb4654466b764723f7b58872a186dea5f7504793efe4d93df2d8390139649a45d32eec06848' '6dbcf4833dabb68443e50a644cc26309785593f757f7484771a101873aeb02d2e8f3869c0679132a6883ea86bd5fd47494281d0f70dcae9f4bec9b06a7d69b19' '7fa3cc2cc13171aa395accc061a8582f0254a01377b3d60ded4c8d82c5a4f1af65b8e1b6c4fccf0b5fb9a6de1cd59121aae353e6d374726f058c3718bfb9743f' '67cdb7e097bbb46da5cf04708bc2858b080d1a85742afc4c088da3e4e3fdeb6e4c51240fc5a6b9a1c7d927b30b3d251236e025ee4e5496142a7716d4ba51b82c' '4ebc6160e28b7852b4ae689062a9b92f3ff3f2c7990bfe84ed62ce617d5589d53d375627cf544abb10b41e68b213af1507af39f5148fa4f119abcc15055033d8' '0884229f513f843099dbd397d96fd8b37aad2d1ae0aee2771f57f54188241d6ed0ede8750780b9564bd9e3dc8d215039d409081a8eb46ce25b90edb196eb6bf4' 'f4ad4c90cfcf11af42c6cfc6d2027b21af3f58ac274b9bd0852a52ef60b606476766f194b281f6baf12f81647b384a98f745519bb48bc2e4f5fe03984c7c0e65' 'f3bdbaac5dbe9384571fe5ec14d2d25035f227a977c25349b8188e7343804e3973b898b44c34f9abe9318666294f4fdfe780fd516dcbdb29c4ac52f6d0ed6cad' '1ce956dbcd0af3e16c336ce15995a7df19b8bed78765890304ff9dcaf6d30c602580bef050d6c659fdff945a31dce880f5f4042dfc295cdef44c34155a3e644c' '804cea67bb0a2fab62dd9cf633d1959a3fe59b3e24f0c2e01a6db951100fa4426ae946a90a93fa7fd6a7d0ece478633d0091144c2fa776858157edec1310f837' 'c8c140527b4dd6ab4b5db09abd451628b12a2cdcfcf9e47c435dae9f30fbbf3e7499f7e1070c1fb08e25085696d103b4728191e8758f4fa05e769a5d7746abf2' '43937dd83705b5ab62ae02cf1d043426c82f37e600afe06a287706e8450b596b84cc23138fbda31d67b9a2206ebfdc69754e329e7621075cbf480691f7d61871' '32975862668e4c28bf345cf9e2e3a2f754f7d7d50208f1d840e3b2ca47da1c19bcff9bdf6dc841ec803c64fd633b479d1d598ee22119589732f7cff1fa6dd6dd' '76c816df10aceec8f1a7d1356220eb3f00b16fac455e84eb8aefe76db29cd037dc74fb5cfa344b8d283b188951bd100c26e351ce2e27c16c836a547fe2c99e46' '417cd957f188b2b06e41d5413bea5f13481c6d5bfa8f184157379d5ac2afa9ba6f7ebc966856f50603f89b9173b6fbfdb3ccf4e3cc0b1bedb53f935591e4a35c' 'dae75d9cd00f1f3ceabf257f1d82d245ace6582cf7ea98a40c1d1eb9b7e1832cb2a0c13f25c814a05a70931c42a06694a67829ea55554cc680eaa8ddf16c84a8' '931ac85c657c1c504de1ea629205b19f79a11acdd7c62cf71b909323ec1588610b1f575bc58ab01c3fbcd334fca8fbc114316570732f55a3f7fb3dd2984cd442' '536c59b274923d36fbfc6dc39ef373a0d1e497422dea6fcdc16cfacb6b9ba421f14c5d7c4db31bab083199d859ff57ae5b19842f95367cfa39059e7156e96093' 'e466392190e0aa58c02acda287bc8ac6fef30160207d08805ca9acd42b7f024d0680c0a76fcb4f29a7d7ca884920bba3a6714b5ad40f64dd1b40bcf0e2621d26' '08f4746882b927bdff6b728630cf1e04a2b79924f694ca2d841e3115c3399feb87a8d363e4d2a0f59179c109cb6be6e840f912aadd44abb0bdb35afd2838cc4d' 'ab35d6663b864449d46da4a9e1c51e11956ff4c38e16db58c831b71f7b964fc25b0283122dbc8aa0549f240f01c4a910fb5c6c82937258c6b736c05b54bcf768' '0793bb7aa67d3989ef093cc17e6d9dd6d2e3999562fe1039b44f0fb9297623bda49271cb7b17d7fab4dc14299e0e5f13eb8f3711dbffc10bf7ffa68838f0585b' '24c5f9ee5553b66ac937785b3312378adbca096888b05da8b0cdc9c0586ee51e9a3754615cc03a659cfe70ba2f48f7ce0359025c816c887c7691424c685f5f96' '4f98126afadd7ad3346e2a55c02a06e1f5709406984835ff4ee206c4b52ef7ce8c52eee3f581fa36799a59578e05375b5db884b88b35866fbc6bb1330b79fe83' '613a9d7a7a512cdf7dc1f1121ecaec7272efe740f5494ce425c3781d41a0ec92e044142d82a28c6445416e84699131745c6872c9b33cb5b93528d0197745455a' '71bd229c0ee32703e3fc44021939f2909adca148035e6bfac44f35cb68cd8e03c01b477bfb29fe05f568728f27bd5b6311a267338d05cdbd5680af0900324c08' 'd3d582336519191f73c8cf3c7bbb0a8df8ecbb333d864a32ad4b263daaeb193f771aa4b9cbf00ab929b4296da6db31fd575bdb2b337148147a76e25459f703ad' '17ded8bdfccef7555cc01727984c768ecc601878319bc8cc959cff51b5091335dd43f45cf69ec12dfd478644ccceab48c7a49c3469bbe3eee9ec9b380cfac7fb' 'd2c149bb48e3152100b02d138471ec107e172f282a05ee4bae321ef0828c758d0cf1f7a6e9bbb02bca14148d59d61f92abcbc5ddb9a7a0b7cba8db9cef22c391' '9fc166f1d7393bd697e58e9ac9aa54b527a28da707da8efeaaf54bfe877c03ae007325928fb04f4c3684ce59232ad3ea5dd834e12e9c877d46ad69b5ca01408b' '3bf7da4e2efabe6b050aa357ec74c120e184a0a1bc6d4342fbb03a3c0cd0bae58c9fc1cda5f69ffdcc7e48a34f51f4a18107163f99348d2504096bccfd1766a9' '88dd4e6a53b948ddd5bdf9a567a116f70047cc6cf5fb695b72b9ab571641e9af52e386c6e0b442c9dd794de39d57b26891dc8bb83e4c92506547f395d340915b' 'adcf0b46ad57390488b3932910fba5a5be8152f91b45864bf078a2b8d92dc89e9944c320dafb7a0d4786e1fce48bedea714d671feefe565ffbbb74baca21d98e' '3373939e76f1ddb788b45424533c2e7687bbacae840fb3e6b1d49034e18315297af66dddf1b13d4f42033608123929b78819f38cca6cbc6c5ecca09bc67ab69f' '0b34beb3afa14605d73d84f1d75bf8182ff0fcb2396e82d06e170cf0dc0d30386071959bd1be3553182c37bb5661a81cf6be8c4e0a14e4df0b01889cfe7edaf1' 'b8a64accada87ee5be989c5307805610c9b5c0327bc107aab237ac3225dd9e4c51b6c79a2a7de15fe187d3c32d7cbe1c462f9b0e9fb5d5a55a74236c7061e96e' '85aeb5920ee5879848be4057324153a077fe907bed527ed8f9b80a3c5ee1ef64786f63ee2999f5ba74e80a43e99ded3280ce27759c1f7b73259a6e2b5e584aa8' '58a94409205f7b670ab5745b8cbc234a38efd6a6217cef4efb7e397f091092e3e0c7790706b0a42accaa83d7509b8e244a98b9f0ba78349ee85f3164745c3501' '80da2c341d8564a47bc460fcdaf9196ac3bb77f0f2ba56bd71089e80e7481728a3ccbdcfcbc3bf70a9c9e5d9d9b01f2ca6615b67c7ab61003808ce00f6545ba3' '651de880cefd51665d854414c451cc80a33ed8f34e7559a95514abd81a2f58348c37dd75f272468eefd56562ba8c99093a6dd9af3ea57796a9db15164a40eda3' '7e41fc3a95073008ca2d71c2266d6d1a17af7803d493b447d40b15a86184c8ce3728b8d3d36765d408b1c46633d1bfa980d878cbac2e04b51ef518d44dfb7295' '2cdcf9ab03eb92f384caf1a2d90f82c75f880cb6286811e83217c883e421c116e7844ca193a010dc35e12eec46ede3663171a2f45f660ef5a8be95c474f61bfc' '7cae5e42b6e16f3c4bf64dca3c7573c1b552424ff70bb6da0a21f121b53b2546b239c87953a090cd90f46a1c3c124e2fe19c560b1830b11334f8e64c92fb614d' 'a45b2a53b6725dfd4780049a7522befe49c2a0c4efa4fb1dcb5cf53c7af18d329d2ba02aa6ac150342a3e66a46fd17f5e6e76a8db15c677a237edbb5cf4f5af7' '4c178d330117886848d232372a25ecf5cac46ad48a6fed580957d295eb1c4266836f4f807593d381f9089b2078c4185ba972f697ab353a850ebf35b6f140a4ac' '77bfba77f3548d267dc8142125bf26608c723bbdb2834317b3ea031ac64d9ff49bb4d75e29e2c759c03a662955697576d1c93153e9fb3e5dee86466bc29c78e1' '74a51f04237fba3caa25b2e0d49659f2e8330ce82288de866943d06b53690f31d48a77a4dd2e57db1f435b715fbca792268f2e191ffb59e57170d327ed41ac0a' 'e1d03f68918d03f980f4c2dd966e3788afe63f14e2d18dbd4dab2cdbfa1253e4823c0f5daa3a579e47319a3c2af35bc5af0a390e2ba91fe7621f6db8b1a60994' '3616a6305e89963ee8041fd5a3784063ca5b6513b7fe56a5c24eda1bbe07377793d54f07010aad1212cf2310fcf5b5d3e157f8d8b7a85dfc0cdf5ff71f2ed884' '06c5652eb2c70b8aba6d788415089b740c3510cd9c570838f656202ba2dc65d4f3289f6695413665de930e84fe287ef035ed8e83a0610a5a316e76a17442683a' '92cde696eec00e6758b58e73e8bc60ad1a73bb2a18d4fdfd24a19b5be715305a047943a02d94a9703c101ca0c769dbeb816f1f28809345bae0fec42fbc27bb34' '3f65bf65f730101b215a38101e2a01b4be85746ec5e691d0f1e0f43f1ea1fd47de203299fe7c505160fe831987bd091879243878d91b88ed9ab14712837bd786' 'ce82294e480ad42f0001c799fd8131b60024b6097653f3c57564c75e54596616e376f0d7f1cf4e54d8c302a61ef164b4323f795bfa19b2c13ab9e927d37f1600' 'd006a51f306a1397c14111788a23029a894e223a196649cac476acab761479db543bf4537ed5a2f4173ec94af04874b521a1d598ed8e98406cc2cf526d8e0083' 'd723fcc6cce65aa296bc519a07a5d003122ad698a73a3d046dac3780ea5a00fef28f78da251bb46f80f2e0577baa26a6ae13cabf525f22a7a742435e95716dae' 'f25f01c5b27dced202fe76c1717b9eaec65dfa5f28db1910529f60f5ec21cc89c1a15df26c2dd09066a0d89e3f7d87c790e7886c3c2f0978a25f5ec7d1236099' 'e3302d903d053f25aa666d572f74a8bbd3b65dde40eedcbf46e537ceb2294ac22b3772087fce04c4a780c2f18e855179c6ddc8af12d72a89b82957ce09deb52f' '4bd44cbe85c53902b8a360509703e3d38e8a5da75dd2c534a77f03ce6440632f6c83c92939069c60473c88ffb3abab0fbf11e39271f44f813b9f6432ea5f9a6b' 'f115314dd2bb1da07bba7a90fec5c3acb7ccb5145efaea03d6806942e24d402c9a144a2fd07b82e727a0b79dedd4bdd87de0bbaf0944236563164fb6f117965e' 'd05c48c376f23dd7fda2b5249b5985665de8344774f420a95151f7484ab33c38fb78b2ff279cedf762877dca3abd91c4d9e4900547e9c31e7636e1d90cc13d2b' '791fdb94cd08d889ebc423c79fcc3ad742de3dab03432005ba5f5d0c447567b094da091f12307853dafba1797b1c4737dd405767dceac2b4e15f28a5f7584966' 'a56efdaae0344726debf5b74846edce8df7aa2357fbc7a05a3d369d1f457b02934a0d0ce2330072e03f1ac901e06e333c9393f795c761f8440307e7649ed5596' 'ab67483296320c0b577f5a68a2058ca49ea2350346c21c47bb29871589a59096330859993fd7cfcd7e0e7389727b15519f196c5a58dee9f7acca721302265ff1' 'b9309da09b165fb57e83f84e3584d2479bd3336ed86e181e5df2d27daa92bd55d03d7f3fc226f03696af5f0f32d8e0e7ecd26ae7e50eed0200d0b0feaad07efb') prepare() { cd "${_pkgname}-${_pkgver}" sed -i 's/-Werror//' Makefile sed -i 's/ncursesw5-config/ncursesw6-config/' Makefile sed -i 's/shell git/shell false/' Makefile # Disable default optimizations sed -i 's/-Os/-O3/' Makefile sed -i 's/-O0/-O3/' Makefile sed -i 's/-Og/-O3/' Makefile sed -i 's/CXXFLAGS += -ffast-math/#CXXFLAGS += -ffast-math/' Makefile # Remove non-existent flags generating warnings sed -i 's/-Wzero-as-null-pointer-constant \\/-Wzero-as-null-pointer-constant/' Makefile sed -i 's/-Wno-range-loop-analysis/#-Wno-range-loop-analysis/' Makefile sed -i 's/-Wno-unknown-warning-option/#-Wno-unknown-warning-option/' Makefile # Fix filenames and paths sed -i 's|cataclysm-dda|cataclysm-bn|' CMakeLists.txt sed -i 's|TARGET_NAME = cataclysm|TARGET_NAME = cataclysm-bn|' Makefile sed -i 's|cataclysm.a|cataclysm-bn.a|' Makefile sed -i 's|cataclysm.a|cataclysm-bn.a|' tests/Makefile sed -i 's|cataclysm-dda|cataclysm-bn|' src/path_info.cpp # Fix version sed -i 's|VERSION = unstable|VERSION = 2022-08-06-2156|' Makefile # # # Hotfixes #echo "Applying hotfixes" # # # Reverts echo "Applying revert patches" # Revert removal of reloaded ammunition. patch -NREp1 -i "$srcdir"/revert-07_Remove-handload-quality-distinction-1481.patch # Revert Hub 01 removal. patch -NREp1 -i "$srcdir"/revert-06_Obsolete-useless-hub01-basement-1457.patch # Revert removal of filthy/faulty bionics patch. #patch -NREp1 -i "$srcdir"/revert-05_No-filth-and-fault-on-uninstalled-bionics-1389.patch # Revert the book changes for now. patch -NREp1 -i "$srcdir"/revert-02_revert-book-revamp.patch # Revert generic night vision. patch -NRp1 -i "$srcdir"/revert-03_generic-nv.patch # Revert telescopic lenses. patch -NRp1 -i "$srcdir"/revert-04_telescopic-lenses.patch # Revert the Infection Immune Trait and Revert Infection Resistant to as before. Also keep Truthteller. patch -Np1 -i "$srcdir"/revert-01_removed-traits.patch # # # Various fixes for bugs I came across # # Ammo fixes echo "Applying ammo fixes" # Fix mulitple inconsistent ammuntion names and handloaded status. patch -Np1 -i "$srcdir"/ammo-01_inconsistent-ammo-names.patch # Set a fixed loudness for 20x66mm shotgun shells like that of other shotguns: # Other shotguns have fixed loudness to work around how the short range factors causes them to be far quieter than one would otherwise expect. patch -Np1 -i "$srcdir"/ammo-02_fix-20x66mm-loudness.patch # Change reloaded_50bmg to be based on 50bmg: # The id and description make it pretty clear that reloaded_50bmg is not supposed to be based on Match rounds. patch -Np1 -i "$srcdir"/ammo-03_fix-reloaded-50bmg.patch # Fix .22 casings not stacking when every other casing stacks. patch -Np1 -i "$srcdir"/ammo-05_22-casings-can-stack.patch # Fix ammo ordering so as to not prevent those items being modded. # Having copy-from items occuring earlier in a json than the item being copied from prevents items based on it being modified. patch -Np1 -i "$srcdir"/ammo-10_ammo-order-fix.patch # # armor fixes echo "Applying armor fixes" # Fix Ankle Ammo Pouch to not look like a backpack: # SDG added a tile for ammo pouches to bypass this bug, but this fix still makes sense. patch -Np1 -i "$srcdir"/armor-01_ankle-ammo-pouch-is-not-a-backpack.patch # Fix fingerless survivor gloves losing base warmth: # They lose warmth already from the lack of coverage, no need to double up. patch -Np1 -i "$srcdir"/armor-02_fix-survivor-fingerless-gloves-warmth.patch # # bionics fixes echo "Applying bionic fixes" # Fix npc not being able to install some additional CBMs: # ie, soporific inducer, gasoline fuel cell, enhanced hearing, surgical scalpels. patch -Np1 -i "$srcdir"/bionics-01_npc-can-use-more-bionics.patch # # faction fixes echo "Applying faction fixes" # Backport the factions.json updates from DDA patch -Np1 -i "$srcdir"/faction-01_more-factions.patch # Backport the monster_factions.json updates from DDA #patch -Np1 -i "$srcdir"/faction-02_more-monster-factions.patch # Fix faction food supply being calculated at 288 calories per person instead of 2500. patch -Np1 -i "$srcdir"/faction-03_fix-food-supply-calculations.patch # # faction camp fixes echo "Applying faction camp fixes" # cur_level is set to -1 on all modern basecamps. Remove the recruiting penalty this legacy variable inadvertently induces. patch -Np1 -i "$srcdir"/factioncamp-01_remove-legacy-recruiting-penalty.patch # # food fixes echo "Applying food fixes" # Fix several foods not being marked as the correct material: # This prevents odd outcomes such as carnivores drinking almond/soy milk and eating peanut butter. patch -Np1 -i "$srcdir"/foods-01_fix-food-materials.patch # Fix several foods using unclear naming: # Rename can_corn from corn to canned corn to make its limited use in recipes more clear. # Fix pluralization of canned beans to also be canned beans. patch -Np1 -i "$srcdir"/foods-02_fix-food-naming.patch # # itemgroups fixes echo "Applying itemgroup fixes" # Stop police and SWAT carrying 4.6mm magazines despite having no compatible weapons: # The H&K UCP was removed from the base game some time ago. patch -Np1 -i "$srcdir"/itemgroups-01_hk46-is-milspec.patch # Fix the pepperjack beef and burrito bowl MREs never dropping: # They weren't in the itemgroups for MREs or soldier class. patch -Np1 -i "$srcdir"/itemgroups-02_add-missing-mre.patch # Fix items in unlooted, unused lockers and cabinets missing batteries: # They need to be marked as the battery contained inside the item. patch -Np1 -i "$srcdir"/itemgroups-03_fix-shelter-batteries.patch # # medicine fixes echo "Applying medicine fixes" # Add -4 health to antibiotics: # weak are -2, strong are -10, this feels like a nice middle ground. patch -Np1 -i "$srcdir"/meds-01_antibiotics-unhealthy.patch # # missions fixes echo "Applying mission fixes" # Fix Typos: # Foraging encounter has inconsistent monster references. Change all to cougar. patch -Np1 -i "$srcdir"/mission-01_typos.patch # # monster fixes echo "Applying monster fixes" # Prefix medical zombies with "zombie" like other zombies: # It just felt weird seeing "nurse" in the enemy list. patch -Np1 -i "$srcdir"/monsters-01_medical-zombies-called-zombies.patch # Port the updates to power leeches from DDA #patch -Np1 -i "$srcdir"/monsters-02_power-leech-update.patch # # mutation fixes echo "Applying mutation fixes" # Light Step feels too powerful in Bright Nights. patch -Np1 -i "$srcdir"/mutations-01_nerf-lightstep.patch # Fix Evacuee 3 background 3 being player visible: # It was missing "player_display": false patch -Np1 -i "$srcdir"/mutations-02_fix-evac3-background-visible.patch # Port in DDA's eye colours patch -Np1 -i "$srcdir"/mutations-03_eye-colours.patch # # npc fixes echo "Applying NPC fixes" # Port the updates to Isherwood Farm from DDA patch -Np1 -i "$srcdir"/npc-01_isherwood-update.patch # Port the updates to Tacoma Commune from DDA patch -Np1 -i "$srcdir"/npc-02_tacoma-update.patch # Port the updates to New England Church Community from DDA patch -Np1 -i "$srcdir"/npc-03_godco-update.patch # Port the updates to prison and island prison from DDA patch -Np1 -i "$srcdir"/npc-04_island-prison-update.patch # Port the updates to kindred from DDA patch -NEp1 -i "$srcdir"/npc-05_kindred-update.patch # Port the updates to Mr Lapin from DDA patch -Np1 -i "$srcdir"/npc-06_lapin-update.patch # Port the lighthouse family from DDA # Hack in some effects to use as timers and probe NPC mechanic skill. patch -Np1 -i "$srcdir"/npc-07_lighthouse-family_v2.patch # Update the Tacoma Nurse to buy almost every non-dangerous, non-electrical, and non-expensive medicine. # Also remove acceptance for various tools that are not correctly taken, such as first aid kits. patch -Np1 -i "$srcdir"/npc-08_nurse-takes-more-meds.patch # Update the FMC broker to buy most preserved foods. # Also update the dialogue to specify that he buys more types. patch -Np1 -i "$srcdir"/npc-09_broker-takes-more-foods.patch # Port the bunker merchant from DDA patch -Np1 -i "$srcdir"/npc-10_bunker-merchant.patch # Port the updates to Free Merchant Center from DDA # Relies on new json functions :/ #patch -Np1 -i "$srcdir"/npc-nn_refugee.patch # Port the updates to Hub 01 from DDA # Relies on new json functions :/ #patch -Np1 -i "$srcdir"/zz_npc-nn_robofac-v2.patch # Assorted typos in NPC dialogue. # Fix Jack Isherwood mission listing 10 jars, when it is actually 20. patch -Np1 -i "$srcdir"/npc-20_dialogue-fixes.patch # # recipe fixes echo "Applying recipe fixes" # Fix reloaded 45-70 rounds and reloaded dragon shot not allowing dismantling when every other non-caseless round does. patch -Np1 -i "$srcdir"/recipes-01_4570-dragon-can-be-dismantled.patch # # terrain and overmap fixes echo "Applying terrain and overmap fixes" # Set t_platform_resin movecost to 2: # This allows helicopters to land on the mi-go landing pad. patch -Np1 -i "$srcdir"/terrain-01_migo-platform-landing-pad.patch # Fix missing floor in the tacoma clinic: # The hospital is still a mess. :/ patch -Np1 -i "$srcdir"/terrain-03_tacoma-clinic-add-missing-floor.patch # Fix lumbermill gasoline being spilled instead of being inside the gas pump: # The gas pump was placed on top of a tile that didn't allow items inside, causing the gasoline to be shunted to the next valid one. patch -Np1 -i "$srcdir"/terrain-04_lumbermill-gasoline-not-spilled.patch # Fix community garden liquid fertilizer being in a pit instead of in the storage tanks: # I'm pretty sure that having it all dumped in a pit was not intentional. patch -Np1 -i "$srcdir"/terrain-05_community-garden-fertilizer-not-spilled.patch # Fix some doors being unusable by npcs (incorrect door flag): # The DOOR flag is for terrain that can be opened, not those already open. patch -Np1 -i "$srcdir"/terrain-06_fix-doors-for-npcs.patch # Re-hide something that feels like spoilers. patch -Np1 -i "$srcdir"/terrain-07_rehide-redacted.patch # Set the overmap note for Derelict Shed to s to better match use of the first letter. patch -Np1 -i "$srcdir"/terrain-08_derelict-shed-is-s.patch # Fix npcs unable to drink from firestation and shelter basecamps wells: # They were missing the water_well blueprint_provides. patch -Np1 -i "$srcdir"/terrain-09_make-firestation-shelter-wells-npc-drinkable.patch # # tool fixes echo "Applying tool fixes" # Mark the foldable plastic bottle and steel water bottle as containers: # Being counted as tools didn't seem to fit their role. patch -Np1 -i "$srcdir"/tools-01_foldable-bottle-is-container.patch # Fix blood draw kit being categorized as a weapon: # Upstream changed item templates, so this sets it back to be a tool. patch -Np1 -i "$srcdir"/tools-02_vacutainer-is-not-a-weapon.patch # Fix electric shears not using batteries nor charging via UPS: # Item was unusable without this patch. patch -Np1 -i "$srcdir"/tools-03_shears-use-light-battery.patch # Normalize the manhack volumes to that of the base grenade/explosive: # I don't see how a c-4 manhack could be 1/4 the volume of a stick of c-4. # Grenade hacks were also thrice as big as the base grenade. patch -Np1 -i "$srcdir"/tools-04_normalize-drone-volume.patch # # vehicle fixes echo "Applying vehicle fixes" # Replace the portable generator twin engine with a large 1 cylinder: # This way it can actually function as is. patch -Np1 -i "$srcdir"/vehicles-01_portable-generator-engine.patch # # Uncategorized for now echo "Applying uncategorized fixes" # Fix rubber items dismantling into 10x item volume of rubber. patch -Np1 -i "$srcdir"/etc-01_fix-rubbersplosion.patch # Add price_postapoc to a number of items that did not have one set. patch -Np1 -i "$srcdir"/etc-02_add-missing-price-postapoc.patch # # # Various other fixes for bugs I came across that modify src echo "Applying source code fixes" # Fix radio, e-ink reader music, tactical tonfa not working with UPS. patch -Np1 -i "$srcdir"/jc_radio-can-use-ups.patch # Fix ammo loudness mulitplying by six instead of two. patch -Np1 -i "$srcdir"/jc_ammo-loudness-ap-times-2.patch # Fix smoker racks not accepting bionic firestarter. patch -Np1 -i "$srcdir"/jc_allow-bio-firestarter-on-smoker.patch # Fix Non-Player facton NPCs from becoming sleep deprived. patch -Np1 -i "$srcdir"/jc_stop-non-faction-npc-sleep-depirvation.patch # Fix Non-Player facton NPCs from becoming malnourished. patch -Np1 -i "$srcdir"/jc_stop-non-faction-npc-malnourishment.patch # Fix NPCs preferring tables to cots or woodstoves to the floor. patch -Np1 -i "$srcdir"/jc_stop-sleeping-on-tables.patch # Allow the hacker_laptop to utilize the extra functions. patch -Np1 -i "$srcdir"/jc_allow-hacker-laptop.patch # Expand the overmap tiles for the miltiary base to be less MMMM patch -Np1 -i "$srcdir"/jc_more-military-base-overmap.patch # Allow npcs to pull food from the camp larder at the full range of tiles camp actions can be assigned from: # Should allow bases larger than 3x3 to have less food micromanagment for NPCs. patch -Np1 -i "$srcdir"/jc_npc-eat-from-further-camp.patch # Revert removal of half calorie consumption while sleeping: # Managing the food supply of more than a few NPCs in BN is extremely difficult compared to DDA. patch -Np1 -i "$srcdir"/jc_reduced-kcal-during-sleep.patch # # # Additional changes echo "Applying vampirism patch" # Add vampire mutation lines and modify a number of functions to facilitate these traits. patch -Np1 -i "$srcdir"/vampirism.patch } build() { cd "${_pkgname}-${_pkgver}" #export CXXFLAGS="$(echo $CXXFLAGS | sed -i 's/-Wp,-D_GLIBCXX_ASSERTIONS//' - )" #export CFLAGS="$CFLAGS -fPIE" export CXXFLAGS="$CXXFLAGS -fPIE" export LDFLAGS="$LDFLAGS,-pie" # tests "ifdef TILES" so "TILES=0" will enable tiles! # DYNAMIC_LINKING appears to be a windows flag? # TESTS disabled due to gcc 11.2 bug make PREFIX=/usr RELEASE=1 USE_XDG_DIR=1 BACKTRACE=0 LOCALIZE=1 LANGUAGES=all RUNTESTS=0 make PREFIX=/usr RELEASE=1 USE_XDG_DIR=1 BACKTRACE=0 LOCALIZE=1 LANGUAGES=all RUNTESTS=0 TILES=1 SOUND=1 ./lang/compile_mo.sh } package_cataclysm-bn() { cd "${_pkgname}-${_pkgver}" make DESTDIR="$pkgdir" PREFIX="/usr" RELEASE=1 USE_HOME_DIR=1 LOCALIZE=1 LANGUAGES=all RUNTESTS=0 install # Docs install -d "$pkgdir/usr/share/doc/cataclysm-bn" cp --reflink -r doc/* "$pkgdir/usr/share/doc/cataclysm-bn" # undo symlink rm "$pkgdir/usr/share/doc/cataclysm-bn/JSON_LOADING_ORDER.md" cp --reflink 'data/json/LOADING_ORDER.md' "$pkgdir/usr/share/doc/cataclysm-bn/JSON_LOADING_ORDER.md" # License install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" # Languages cd lang/mo for i in *; do install -d "${pkgdir}/usr/share/locale/${i}/LC_MESSAGES" cp --reflink "${i}/LC_MESSAGES/cataclysm-bn.mo" "${pkgdir}/usr/share/locale/${i}/LC_MESSAGES" done # Help cd ./../.. cp -r --reflink --no-preserve=ownership "./data/help" "${pkgdir}/usr/share/${pkgname}/" # install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" } package_cataclysm-bn-tiles() { pkgdesc="A graphical post-apocalyptic roguelike." depends=('cataclysm-bn' 'sdl2_image' 'sdl2_ttf' 'freetype2' 'sdl2_mixer') cd "${_pkgname}-${_pkgver}" make DESTDIR="$pkgdir" PREFIX="/usr" RELEASE=1 LOCALIZE=1 LANGUAGES=all RUNTESTS=0 TILES=1 SOUND=1 install # Icon #install -D 'data/osx/AppIcon.iconset/icon_128x128.png' "$pkgdir/usr/share/icons/hicolor/128x128/apps/$pkgname.png" #install -D 'data/osx/AppIcon.iconset/icon_128x128.png' "$pkgdir/usr/share/pixmaps/$pkgname.png" install -D "${srcdir}/icon_128x128.png" "$pkgdir/usr/share/icons/hicolor/128x128/apps/$pkgname.png" install -D "${srcdir}/icon_128x128.png" "$pkgdir/usr/share/pixmaps/$pkgname.png" install -Dm644 "${srcdir}/$pkgname.desktop" "${pkgdir}/usr/share/applications/$pkgname.desktop" install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" # Tileset mv "$srcdir/cataclysm-dda-tileset_undeadpeople-master" "$srcdir/undeadpeople" cp --reflink -r "$srcdir/undeadpeople" "$pkgdir/usr/share/cataclysm-bn/gfx" rm -rf "$pkgdir/usr/share/cataclysm-bn/gfx/MSX++UnDeadPeopleEdition" #mv "$srcdir/cataclysm-dda-mod_battle-maid-redone-tileset-master" "$srcdir/battle-maid-redone-tileset" cp --reflink -r "$srcdir/cataclysm-dda-mod_battle-maid-redone-tileset-master/battle-maid-redone-tileset-pt1" "$pkgdir/usr/share/cataclysm-bn/mods" cp --reflink -r "$srcdir/cataclysm-dda-mod_battle-maid-redone-tileset-master/battle-maid-redone-tileset-pt2" "$pkgdir/usr/share/cataclysm-bn/mods" # Sound mv "$srcdir/cataclysm-dda-soundpack_jcsoundpack-master" "$srcdir/jcsoundpack" cp --reflink -r "$srcdir/jcsoundpack" "$pkgdir/usr/share/cataclysm-bn/sound" # Music mv "$srcdir/cataclysm-dda-musicpack_coag-musicpack-master" "$srcdir/coag-musicpack" install -Dm644 "$srcdir/coag-musicpack/musicset.json" "$pkgdir/usr/share/cataclysm-bn/sound/jcsoundpack/musicset.json" cp --reflink -r "$srcdir/coag-musicpack/music" "$pkgdir/usr/share/cataclysm-bn/sound/jcsoundpack" # hack: remove overlapping files cd "$pkgdir/../cataclysm-bn" find . -type f -exec rm -f "$pkgdir"/{} \; cd "$pkgdir" find . -type d -empty -delete }