{"id":2018,"date":"2025-09-04T16:00:40","date_gmt":"2025-09-04T15:00:40","guid":{"rendered":"https:\/\/kankiprojects.com\/?p=2018"},"modified":"2025-09-04T17:14:44","modified_gmt":"2025-09-04T16:14:44","slug":"street-fighter-like","status":"publish","type":"post","link":"https:\/\/kankiprojects.com\/es\/street-fighter-like\/","title":{"rendered":"Street Fighter-Like"},"content":{"rendered":"<p>A combat game in homage to the legendary Street Fighter II, made with C++ and Raylib!<\/p>\n\n\n\n<p>GitLab repository:&nbsp;<a href=\"https:\/\/gitlab.com\/jongompal\/pac2-pg-streetfighterlike\">https:\/\/gitlab.com\/jongompal\/pac2-pg-streetfighterlike<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"important-features-of-the-game\">Important features of the game<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Home Screen<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Smooth transition to the game with a timed introduction screen that automatically advances after 3 seconds or when you press a button, improving the user experience and the pace of the game.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Menu Logic<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>I reused the menu logic of the previous project.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Character Design<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>Ken is based on a modular character base class for scalability, although most of the logic is finally implemented in Ken&#8217;s script.<\/li>\n\n\n\n<li>I implemented a Finite State Machine (FSM) to manage character states, ensuring smooth transitions of behavior and simplified game logic.<\/li>\n\n\n\n<li>Some animations of the character Ken sometimes disappear. This is probably due to an invalid sprite index, but I couldn&#8217;t find the error (especially in the crouching state).<\/li>\n\n\n\n<li>Added collision flags to hits to prevent multiple damage records.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Collisions<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>The car acts as an interactive element, allowing players to jump on it or hit it to add variety to the game.<\/li>\n\n\n\n<li>Robust collision detection prevents players from crossing or moving around the car, adapting to scenarios such as walking, jumping and falling.<\/li>\n\n\n\n<li>I implemented screen limits to keep the characters within the visible area of \u200b\u200bthe game, ensuring logical movements.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Sound Design<\/strong>\u00a0:\n<ul class=\"wp-block-list\">\n<li>I created a custom sound manager to handle sound effects (SFX) and background music.<\/li>\n\n\n\n<li>Added hit sounds, UI interactions, and win\/loss events.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"resources\">Resources<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>raylib-cheatsheet<\/strong>\u00a0. (n.d.). Raylib.\u00a0<a href=\"https:\/\/www.raylib.com\/cheatsheet\/cheatsheet.html\">Raylib Cheatsheet<\/a>\u00a0.<\/li>\n\n\n\n<li><strong>Street Fighter Alpha 3 (XL)<\/strong>\u00a0. (2024, June 9).\u00a0<a href=\"https:\/\/fontstruct.com\/fontstructions\/show\/2483964\/street-fighter-alpha-3-xl\">Source in FontStruct<\/a>\u00a0.<\/li>\n\n\n\n<li><strong>101soundboards.com<\/strong>\u00a0. (2024, October 24).\u00a0<a href=\"https:\/\/www.101soundboards.com\/boards\/10441-street-fighter-ii-sounds\">Sounds of Street Fighter II<\/a>\u00a0.<\/li>\n\n\n\n<li><strong>Myinstants<\/strong>\u00a0. (n.d.).\u00a0<a href=\"https:\/\/www.myinstants.com\/es\/search\/?name=Street+fighter\">Street Fighter sounds<\/a>\u00a0.<\/li>\n\n\n\n<li><strong>imitated<\/strong>\u00a0\u200b(2018, October 1).\u00a0<a href=\"https:\/\/www.youtube.com\/watch?v=JQ8sjsNyZUU\">Car bonus theme in Street Fighter II<\/a>\u00a0.<\/li>\n\n\n\n<li><strong>OpenAI<\/strong>\u00a0. (2024). ChatGPT (November 20 version).\u00a0<a href=\"https:\/\/chat.openai.com\/chat\">Language model<\/a>\u00a0.<\/li>\n\n\n\n<li>Conversation with ChatGPT to solve compilation errors, provide ideas and clean code:\u00a0<a href=\"https:\/\/chatgpt.com\/share\/6738fcb9-0894-800b-8cb4-0d521e142153\">Link to the conversation<\/a>\u00a0.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Street Fighter-Like\" width=\"1290\" height=\"726\" src=\"https:\/\/www.youtube.com\/embed\/4xcdulp5C0g?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>","protected":false},"excerpt":{"rendered":"<p>A combat game in homage to the legendary Street Fighter II, made with C++ and Raylib! GitLab repository:&nbsp;https:\/\/gitlab.com\/jongompal\/pac2-pg-streetfighterlike Important features of the game Resources<\/p>","protected":false},"author":1,"featured_media":2019,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_gspb_post_css":"","_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[15,12],"tags":[21,23],"class_list":["post-2018","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-2d","category-development","tag-c","tag-studies"],"blocksy_meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Street Fighter-Like - Kanki Projects<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kankiprojects.com\/es\/street-fighter-like\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Street Fighter-Like - Kanki Projects\" \/>\n<meta property=\"og:description\" content=\"A combat game in homage to the legendary Street Fighter II, made with C++ and Raylib! GitLab repository:&nbsp;https:\/\/gitlab.com\/jongompal\/pac2-pg-streetfighterlike Important features of the game Resources\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kankiprojects.com\/es\/street-fighter-like\/\" \/>\n<meta property=\"og:site_name\" content=\"Kanki Projects\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-04T15:00:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-04T16:14:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#\\\/schema\\\/person\\\/0e11590f4b7d2062bd82d8af59428401\"},\"headline\":\"Street Fighter-Like\",\"datePublished\":\"2025-09-04T15:00:40+00:00\",\"dateModified\":\"2025-09-04T16:14:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/\"},\"wordCount\":313,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#\\\/schema\\\/person\\\/0e11590f4b7d2062bd82d8af59428401\"},\"image\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/vlcsnap-2024-11-29-11h31m07s519.jpg\",\"keywords\":[\"C++\",\"Studies\"],\"articleSection\":[\"2D\",\"Development\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/\",\"url\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/\",\"name\":\"Street Fighter-Like - Kanki Projects\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/vlcsnap-2024-11-29-11h31m07s519.jpg\",\"datePublished\":\"2025-09-04T15:00:40+00:00\",\"dateModified\":\"2025-09-04T16:14:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#primaryimage\",\"url\":\"https:\\\/\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/vlcsnap-2024-11-29-11h31m07s519.jpg\",\"contentUrl\":\"https:\\\/\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/vlcsnap-2024-11-29-11h31m07s519.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/street-fighter-like\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/kankiprojects.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Street Fighter-Like\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#website\",\"url\":\"https:\\\/\\\/kankiprojects.com\\\/\",\"name\":\"Kanki Projects\",\"description\":\"Digital Artist Portfolio\",\"publisher\":{\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#\\\/schema\\\/person\\\/0e11590f4b7d2062bd82d8af59428401\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/kankiprojects.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/kankiprojects.com\\\/#\\\/schema\\\/person\\\/0e11590f4b7d2062bd82d8af59428401\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Profile_picture.png?fit=600%2C600&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Profile_picture.png?fit=600%2C600&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Profile_picture.png?fit=600%2C600&ssl=1\",\"width\":600,\"height\":600,\"caption\":\"admin\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/kankiprojects.com\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Profile_picture.png?fit=600%2C600&ssl=1\"},\"sameAs\":[\"https:\\\/\\\/kankiprojects.com\"],\"url\":\"https:\\\/\\\/kankiprojects.com\\\/es\\\/author\\\/admin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Street Fighter-Like - Kanki Projects","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kankiprojects.com\/es\/street-fighter-like\/","og_locale":"es_ES","og_type":"article","og_title":"Street Fighter-Like - Kanki Projects","og_description":"A combat game in homage to the legendary Street Fighter II, made with C++ and Raylib! GitLab repository:&nbsp;https:\/\/gitlab.com\/jongompal\/pac2-pg-streetfighterlike Important features of the game Resources","og_url":"https:\/\/kankiprojects.com\/es\/street-fighter-like\/","og_site_name":"Kanki Projects","article_published_time":"2025-09-04T15:00:40+00:00","article_modified_time":"2025-09-04T16:14:44+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"admin","Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#article","isPartOf":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/"},"author":{"name":"admin","@id":"https:\/\/kankiprojects.com\/#\/schema\/person\/0e11590f4b7d2062bd82d8af59428401"},"headline":"Street Fighter-Like","datePublished":"2025-09-04T15:00:40+00:00","dateModified":"2025-09-04T16:14:44+00:00","mainEntityOfPage":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/"},"wordCount":313,"commentCount":0,"publisher":{"@id":"https:\/\/kankiprojects.com\/#\/schema\/person\/0e11590f4b7d2062bd82d8af59428401"},"image":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#primaryimage"},"thumbnailUrl":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","keywords":["C++","Studies"],"articleSection":["2D","Development"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kankiprojects.com\/street-fighter-like\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kankiprojects.com\/street-fighter-like\/","url":"https:\/\/kankiprojects.com\/street-fighter-like\/","name":"Street Fighter-Like - Kanki Projects","isPartOf":{"@id":"https:\/\/kankiprojects.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#primaryimage"},"image":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#primaryimage"},"thumbnailUrl":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","datePublished":"2025-09-04T15:00:40+00:00","dateModified":"2025-09-04T16:14:44+00:00","breadcrumb":{"@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kankiprojects.com\/street-fighter-like\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#primaryimage","url":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","contentUrl":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/kankiprojects.com\/street-fighter-like\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kankiprojects.com\/"},{"@type":"ListItem","position":2,"name":"Street Fighter-Like"}]},{"@type":"WebSite","@id":"https:\/\/kankiprojects.com\/#website","url":"https:\/\/kankiprojects.com\/","name":"Kanki Projects","description":"Digital Artist Portfolio","publisher":{"@id":"https:\/\/kankiprojects.com\/#\/schema\/person\/0e11590f4b7d2062bd82d8af59428401"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kankiprojects.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/kankiprojects.com\/#\/schema\/person\/0e11590f4b7d2062bd82d8af59428401","name":"admin","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/i0.wp.com\/kankiprojects.com\/wp-content\/uploads\/2023\/07\/Profile_picture.png?fit=600%2C600&ssl=1","url":"https:\/\/i0.wp.com\/kankiprojects.com\/wp-content\/uploads\/2023\/07\/Profile_picture.png?fit=600%2C600&ssl=1","contentUrl":"https:\/\/i0.wp.com\/kankiprojects.com\/wp-content\/uploads\/2023\/07\/Profile_picture.png?fit=600%2C600&ssl=1","width":600,"height":600,"caption":"admin"},"logo":{"@id":"https:\/\/i0.wp.com\/kankiprojects.com\/wp-content\/uploads\/2023\/07\/Profile_picture.png?fit=600%2C600&ssl=1"},"sameAs":["https:\/\/kankiprojects.com"],"url":"https:\/\/kankiprojects.com\/es\/author\/admin\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/kankiprojects.com\/wp-content\/uploads\/2025\/09\/vlcsnap-2024-11-29-11h31m07s519.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/posts\/2018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/comments?post=2018"}],"version-history":[{"count":2,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/posts\/2018\/revisions"}],"predecessor-version":[{"id":2021,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/posts\/2018\/revisions\/2021"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/media\/2019"}],"wp:attachment":[{"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/media?parent=2018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/categories?post=2018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kankiprojects.com\/es\/wp-json\/wp\/v2\/tags?post=2018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}